第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

如何在父子順序中構(gòu)造yaml文件?

如何在父子順序中構(gòu)造yaml文件?

Go
慕斯709654 2023-06-19 17:08:51
我想通過 yaml 文件使用 golang 形成一個(gè)結(jié)構(gòu),但我發(fā)現(xiàn)很難弄清楚如何去做。api:  local:    host: localhost    port: 8085  develop:    host:    port:  production:    host:    port:rest-api:  local:    host: localhost    port: 8085  develop:    host:    port:  production:    host:    port:這是我的 yaml 文件中的格式預(yù)期的代碼是我想在本地、開發(fā)和生產(chǎn)格式中創(chuàng)建一個(gè)動(dòng)態(tài) api url,如 api:local = host+port,與開發(fā)和生產(chǎn)相同,以便輕松地動(dòng)態(tài)配置和設(shè)置感謝您在 golang struct 方面的幫助,也感謝您的幫助。
查看完整描述

1 回答

?
拉莫斯之舞

TA貢獻(xiàn)1820條經(jīng)驗(yàn) 獲得超10個(gè)贊

粘貼您的 yaml 會(huì)產(chǎn)生以下結(jié)果:

type AutoGenerated struct {

? ? API struct {

? ? ? ? Local struct {

? ? ? ? ? ? Host string `yaml:"host"`

? ? ? ? ? ? Port int? ? `yaml:"port"`

? ? ? ? } `yaml:"local"`

? ? ? ? Develop struct {

? ? ? ? ? ? Host interface{} `yaml:"host"`

? ? ? ? ? ? Port interface{} `yaml:"port"`

? ? ? ? } `yaml:"develop"`

? ? ? ? Production struct {

? ? ? ? ? ? Host interface{} `yaml:"host"`

? ? ? ? ? ? Port interface{} `yaml:"port"`

? ? ? ? } `yaml:"production"`

? ? } `yaml:"api"`

? ? RestAPI struct {

? ? ? ? Local struct {

? ? ? ? ? ? Host string `yaml:"host"`

? ? ? ? ? ? Port int? ? `yaml:"port"`

? ? ? ? } `yaml:"local"`

? ? ? ? Develop struct {

? ? ? ? ? ? Host interface{} `yaml:"host"`

? ? ? ? ? ? Port interface{} `yaml:"port"`

? ? ? ? } `yaml:"develop"`

? ? ? ? Production struct {

? ? ? ? ? ? Host interface{} `yaml:"host"`

? ? ? ? ? ? Port interface{} `yaml:"port"`

? ? ? ? } `yaml:"production"`

? ? } `yaml:"rest-api"`

}

有明顯的子類型重復(fù)項(xiàng)。所以可以修剪。


第一關(guān):


type Address struct {

? ? Host string `yaml:"host"`

? ? Port int? ? `yaml:"port"`

}


type MyConfig struct {

? ? API struct {

? ? ? ? Local? ? ? Address `yaml:"local"`

? ? ? ? Develop? ? Address `yaml:"develop"`

? ? ? ? Production Address `yaml:"production"`

? ? } `yaml:"api"`

? ? RestAPI struct {

? ? ? ? Local? ? ? Address `yaml:"local"`

? ? ? ? Develop? ? Address `yaml:"develop"`

? ? ? ? Production Address `yaml:"production"`

? ? } `yaml:"rest-api"`

}

第二次(也是最后一次)通過:


type Address struct {

? ? Host string `yaml:"host"`

? ? Port int? ? `yaml:"port"`

}


type Deployment struct {

? ? Local? ? ? Address `yaml:"local"`

? ? Develop? ? Address `yaml:"develop"`

? ? Production Address `yaml:"production"`

}


type MyConfig struct {

? ? API? ? ?Deployment `yaml:"api"`

? ? RestAPI Deployment `yaml:"rest-api"`

}


查看完整回答
反對(duì) 回復(fù) 2023-06-19
  • 1 回答
  • 0 關(guān)注
  • 156 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)