我正在使用Go创建一个嵌套结构并填充它。我在结构中有一个需要设置自己的自定义字段,但这是在外部结构的字段中使用的类型。例如:
type Case struct {
CaseID string `json:"caseID"`
CaseStatus string `json:"caseStatus"`
Kit_Details []Kit_Details `json:"kit_Details"`
}
type Kit_Details struct {
KitID string `json:"kitID"`
KitStatus string `json:"kitStatus"`
}
我创建了一个嵌套结构。我想KitStatus
在程序中使用Case struct 来更新字段。这意味着如果我从中访问Case struct,我将如何移动到Kit_Details
struct并更新结构的字段。有人可以帮助我如何使用FieldByName("KitStatus")
和使用SetString("New value")
来更新Case struct的字段并更新该字段的值。
您可以这样使用:
v := reflect.ValueOf(test)
fmt.Println("Value of test before update", v)
v.FieldByName("Kit_Details").Index(0).FieldByName("KitStatus").SetString("abcdsdf")
您可以使用循环遍历所有元素并使用进行更新Index()
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句