我有一個表示數(shù)據(jù)庫中對象的結(jié)構(gòu),如下所示:type Object struct { Id string Field1 string Field2 int}而且我想擁有一個函數(shù),只要修改字段,它就會更新數(shù)據(jù)庫中的特定字段,具體如下:func (self *Object) SetField1(value string) { self.Field1 = value database.Update(self.Id, "Field1", self.Field1) // pseudocode}有沒有一種方法可以替換"Field1"硬編碼的字符串,以使我的代碼可以抵抗struct字段順序和命名的將來更改?我已經(jīng)瀏覽了反射包,能夠獲得代表我正在使用的字段的 StructField 會很好,但它似乎需要通過硬編碼字符串的字段名稱,或者字段在結(jié)構(gòu)中的索引(可能會更改)。
- 2 回答
- 0 關(guān)注
- 190 瀏覽
添加回答
舉報
0/150
提交
取消