为了账号安全,请及时绑定邮箱和手机立即绑定

如何取消马歇尔复合筑巢的山药

如何取消马歇尔复合筑巢的山药

Go
鸿蒙传说 2022-09-19 20:44:23
如何取消封送这些数据?我正在尝试提取名称,描述,版本和其他字段。但是当我打印出未封送的内容时,我得到以下内容:索引: {Api版本:v1 条目:地图[] 发布时间:2016-10-06T16:23:20.499029981-06:00}这是我到目前为止尝试过的。package mainimport (    "fmt"    "log"    "gopkg.in/yaml.v2")const index_yaml = `apiVersion: v1entries:    alpine:    - created: 2016-10-06T16:23:20.499814565-06:00        description: Deploy a basic Alpine Linux pod        digest: 99c76e403d752c84ead610644d4b1c2f2b453a74b921f422b9dcb8a7c8b559cd        home: https://helm.sh/helm        name: alpine        sources:        - https://github.com/helm/helm        urls:        - https://technosophos.github.io/tscharts/alpine-0.2.0.tgz        version: 0.2.0    - created: 2016-10-06T16:23:20.499543808-06:00        description: Deploy a basic Alpine Linux pod        digest: 515c58e5f79d8b2913a10cb400ebb6fa9c77fe813287afbacf1a0b897cd78727        home: https://helm.sh/helm        name: alpine        sources:        - https://github.com/helm/helm        urls:        - https://technosophos.github.io/tscharts/alpine-0.1.0.tgz        version: 0.1.0    nginx:    - created: 2016-10-06T16:23:20.499543808-06:00        description: Create a basic nginx HTTP server        digest: aaff4545f79d8b2913a10cb400ebb6fa9c77fe813287afbacf1a0b897cdffffff        home: https://helm.sh/helm        name: nginx        sources:        - https://github.com/helm/charts        urls:        - https://technosophos.github.io/tscharts/nginx-1.1.0.tgz        version: 1.1.0generated: 2016-10-06T16:23:20.499029981-06:00`type Entry struct {    Created     string `yaml:"created"`    Description string `yaml:"created"`    Home        string `yaml:"home"`}type Entries map[string][]Entrytype Index struct {    ApiVersion string  `yaml:"apiVersion"`    Entry      Entries `yaml:"entry"`    Generated  string  `yaml:"generated"`}
查看完整描述

2 回答

?
繁星点点滴滴

TA贡献1803条经验 获得超3个赞

这是一个很棒的服务,你可以用它来为你的yamls制作结构。这是其工作的结果。

    type AutoGenerated struct {

        APIVersion string `yaml:"apiVersion"`

        Entries    struct {

            Alpine []struct {

                Created struct {

                } `yaml:"created"`

                Description string   `yaml:"description"`

                Digest      string   `yaml:"digest"`

                Home        string   `yaml:"home"`

                Name        string   `yaml:"name"`

                Sources     []string `yaml:"sources"`

                Urls        []string `yaml:"urls"`

                Version     string   `yaml:"version"`

            } `yaml:"alpine"`

            Nginx []struct {

                Created struct {

                } `yaml:"created"`

                Description string   `yaml:"description"`

                Digest      string   `yaml:"digest"`

                Home        string   `yaml:"home"`

                Name        string   `yaml:"name"`

                Sources     []string `yaml:"sources"`

                Urls        []string `yaml:"urls"`

                Version     string   `yaml:"version"`

            } `yaml:"nginx"`

        } `yaml:"entries"`

        Generated struct {

        } `yaml:"generated"`

    }


    var doc AutoGenerated

    err := yaml.Unmarshal([]byte(index_yaml), &doc)

    if err != nil {

        log.Fatalf("error: %v", err)

        return

    }


    fmt.Printf("Doc: %+v", doc)

您可以根据需要添加,或根据需要更改结构。omitempty


更新:


package main


import (

    "fmt"

    "log"


    "gopkg.in/yaml.v2"

)


type Entry struct {

    Created     string   `yaml:"created"`

    Description string   `yaml:"description"`

    Digest      string   `yaml:"digest"`

    Home        string   `yaml:"home"`

    Name        string   `yaml:"name"`

    Sources     []string `yaml:"sources"`

    Urls        []string `yaml:"urls"`

    Version     string   `yaml:"version"`

}


type AutoGenerated struct {

    APIVersion string             `yaml:"apiVersion"`

    Entries    map[string][]Entry `yaml:"entries"`

    Generated  string             `yaml:"generated"`

}


func main() {


    var doc AutoGenerated

    err := yaml.Unmarshal([]byte(index_yaml), &doc)

    if err != nil {

        log.Fatalf("error: %v", err)

        return

    }


    fmt.Printf("Doc: %+v", doc)


}


const index_yaml = `apiVersion: v1

entries:

  alpine:

    - created: 2016-10-06T16:23:20.499814565-06:00

      description: Deploy a basic Alpine Linux pod

      digest: 99c76e403d752c84ead610644d4b1c2f2b453a74b921f422b9dcb8a7c8b559cd

      home: https://helm.sh/helm

      name: alpine

      sources:

      - https://github.com/helm/helm

      urls:

      - https://technosophos.github.io/tscharts/alpine-0.2.0.tgz

      version: 0.2.0

    - created: 2016-10-06T16:23:20.499543808-06:00

      description: Deploy a basic Alpine Linux pod

      digest: 515c58e5f79d8b2913a10cb400ebb6fa9c77fe813287afbacf1a0b897cd78727

      home: https://helm.sh/helm

      name: alpine

      sources:

      - https://github.com/helm/helm

      urls:

      - https://technosophos.github.io/tscharts/alpine-0.1.0.tgz

      version: 0.1.0

  nginx:

    - created: 2016-10-06T16:23:20.499543808-06:00

      description: Create a basic nginx HTTP server

      digest: aaff4545f79d8b2913a10cb400ebb6fa9c77fe813287afbacf1a0b897cdffffff

      home: https://helm.sh/helm

      name: nginx

      sources:

      - https://github.com/helm/charts

      urls:

      - https://technosophos.github.io/tscharts/nginx-1.1.0.tgz

      version: 1.1.0

generated: 2016-10-06T16:23:20.499029981-06:00`



查看完整回答
反对 回复 2022-09-19
?
杨魅力

TA贡献1811条经验 获得超6个赞

首先,您必须修改 yaml 输入的缩进,然后根据建议修改 from 到:Entry      Entriesyaml:"entry"yaml:"entries"


package main


import (

    "fmt"

    "log"


    "gopkg.in/yaml.v2"

)


const index_yaml = `apiVersion: v1

entries:

  alpine:

    - created: 2016-10-06T16:23:20.499814565-06:00

      description: Deploy a basic Alpine Linux pod

      digest: 99c76e403d752c84ead610644d4b1c2f2b453a74b921f422b9dcb8a7c8b559cd

      home: https://helm.sh/helm

      name: alpine

      sources:

      - https://github.com/helm/helm

      urls:

      - https://technosophos.github.io/tscharts/alpine-0.2.0.tgz

      version: 0.2.0

    - created: 2016-10-06T16:23:20.499543808-06:00

      description: Deploy a basic Alpine Linux pod

      digest: 515c58e5f79d8b2913a10cb400ebb6fa9c77fe813287afbacf1a0b897cd78727

      home: https://helm.sh/helm

      name: alpine

      sources:

      - https://github.com/helm/helm

      urls:

      - https://technosophos.github.io/tscharts/alpine-0.1.0.tgz

      version: 0.1.0

  nginx:

    - created: 2016-10-06T16:23:20.499543808-06:00

      description: Create a basic nginx HTTP server

      digest: aaff4545f79d8b2913a10cb400ebb6fa9c77fe813287afbacf1a0b897cdffffff

      home: https://helm.sh/helm

      name: nginx

      sources:

      - https://github.com/helm/charts

      urls:

      - https://technosophos.github.io/tscharts/nginx-1.1.0.tgz

      version: 1.1.0

generated: 2016-10-06T16:23:20.499029981-06:00`


type Entry struct {

    Created     string `yaml:"created"`

    Description string `yaml:"description"`


    Home string `yaml:"home"`

}

type Entries map[string][]Entry


type Index struct {

    ApiVersion string  `yaml:"apiVersion"`

    Entry      Entries `yaml:"entries"`

    Generated  string  `yaml:"generated"`

}


func main() {


    var index Index

    err := yaml.Unmarshal([]byte(index_yaml), &index)

    if err != nil {

        log.Fatal("File reading error", err)

        return

    }


    fmt.Printf("Index: %+v", index)


}

输出:


Index: {ApiVersion:v1 Entry:map[alpine:[{Created:2016-10-06T16:23:20.499814565-06:00 Description:Deploy a basic Alpine Linux pod Home:https://helm.sh/helm} {Created:2016-10-06T16:23:20.499543808-06:00 Description:Deploy a basic Alpine Linux pod Home:https://helm.sh/helm}] nginx:[{Created:2016-10-06T16:23:20.499543808-06:00 Description:Create a basic nginx HTTP server Home:https://helm.sh/helm}]] Generated:2016-10-06T16:23:20.499029981-06:00}


查看完整回答
反对 回复 2022-09-19
  • 2 回答
  • 0 关注
  • 105 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号