我想修改Go语言中的一些内容,我创建了以下这个结构体:
我有一个API调用,返回类似于以下结果:
MyStruct struct {
DID string `bson:"d_id" json:"d_id"`
PID string `bson:"p_id" json:"p_id"`
...
}
在代码中的一个调用中,我想要将一个新的键(key)附加到那个结构体(struct)中。
例如:
myNewStruct {
DID string `bson:"d_id" json:"d_id"`
PID string `bson:"p_id" json:"p_id"`
...
MyNewKey string `bson:"new_key" json:"new_key"`
}
事实上,我想添加一个新的键,并将其余部分保留在对象的根目录下,就像上面的对象一样。而不必重写整个对象结构或对每个键进行循环处理。
type MyNewStruct struct {
*MyStruct
MyNewKey MyValueType
}
我有两个带有数据的变量:
MyStructData
和 MyNewKeyData
我想要合并这两个数据到 MyNewStruct
中,使得 MyStructData
中的所有内容都在根键(root key)下,而MyNewKeyData
中的所有内容都在 MyNewKey
键下。
我尝试了以下操作:
theObjectIWant := MyNewStruct {
MyStructData,
"MyNewKey" : MyNewKeyData
}
但是无法正常工作。
DID
和PID
是MyStruct
的字段,不要与“map”中的“key”混淆。 - phanhuy152