我有代表在數據庫對象的結構,像這樣:獲取已知結構域的名稱
type Object struct {
Id string
Field1 string
Field2 int
}
,我想有一個更新數據庫中的特定領域的功能每當字段被修改,這些方針的東西:
func (self *Object) SetField1(value string) {
self.Field1 = value
database.Update(self.Id, "Field1", self.Field1) // pseudocode
}
有沒有辦法來代替"Field1"
硬編碼字符串,我的代碼是在結構領域的排序和命名的未來變化性?
我對反射包進行了探討,能夠獲得表示我正在使用的字段的StructField會很好,但它似乎需要通過硬編碼的字段名稱字符串或結構中的字段索引(可能會更改)。
如果你不知道你的字段的名稱,你將如何在數據庫中更新它? – Daniel
那麼'Object'是'Foo'? –
@系統 - 是的,修正了錯字。 – Chris