如何取消动态键

我有一个具有以下结构的yaml文件:


mappings:

  extgroup1:

  - somescope1

  - somescope2


  someextgroup:

  - somescope3


  allusers:

  - somescope1

映射基本上是一个数组,但结构只是一组动态的键。我想将其解组为新数据类型的数组,如下所示:


type ExternalGroupMapping struct {

    ExternalGroup string

    Scopes        []string

}

所以,它看起来像这样:


[]Mappings{

     ExternalGroupMapping{

         ExternalGroup: "extgroup1"

         Scopes: []string{"somescope1", "somescope2"}

     },

     ExternalGroupMapping{

         ExternalGroup: "someextgroup"

         Scopes: []string{"somescope3"}

     },

     ExternalGroupMapping{

         ExternalGroup: "allusers"

         Scopes: []string{"somescope1"}

     }

}

类似于to_entriesjq


这样的事情可能吗?甚至不知道从哪里开始。


杨魅力
浏览 103回答 1
1回答

慕仙森

如果没有自定义封送处理,则可以通过将动态键映射到映射键来执行此操作。每个映射看起来都是一个作用域数组,因此:type Mappings struct {   Mappings map[string][]string `yaml:"mappings"`}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go