如何在结构中打印结构切片的标记

我有结构 Config ,它由 Field SliceOfAnotherStruct组成,其中包含指向AnotherStruct 的指针切片 。


在这里,我如何才能在 AnotherStruct 中获取字段 Bank 的 json 标记。


type Config struct {

    SliceOfAnotherStruct         []*AnotherStruct        `bson:"anotherStruct" json:"anotherStruct" validate:"required,dive,required"`

}


type AnotherStruct struct {

    Name                   string        `bson:"name" json:"name" validate:"required"`

    Cost                   string        `bson:"cost" json:"cost" validate:"required"`

    Bank    string        `bson:"bank" json:"bank" validate:"required"`

    IFSC     string        `bson:"ifsc" json:"ifsc" validate:"required"`

}


隔江千里
浏览 98回答 1
1回答

撒科打诨

使用创建新变量AnotherStruct,然后使用反射尝试获取该Bank字段,之后您将能够获取它的标签。// new object created from struct AnotherStructobj := AnotherStruct{}// getting `Bank` field information. // the `FieldByName` function return two variables, // 1. the field data // 2. a boolean data, determines whether field is exists or notbankField, ok := reflect.TypeOf(obj).FieldByName("Bank")if ok {    // if the field is exists, then get the desired tag    jsonTagValue := bankField.Tag.Get("json")    fmt.Println(jsonTagValue) // bank}工作游乐场:https://play.golang.org/p/TJDCEVm23Hz
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go