gorm,字节jinzhu开源的ORM(Object Relational Mapping)项目。
- 使用
Update
方法时需要注意:WARNING when update with struct, GORM will not update fields that with zero value
如果直接使用struct类型(表的映射对象)进行更新时,零值将被忽略。加入字段之前有值,现在需要更新为零值。这是直接使用struct进行更新是无效的。零值被忽略之后,相当于字段还保留有旧值。
这种情况下,需要将struct转换为map[string]interface{}
之后再更新。使用structs.Map(*struct)
将struct转换为map格式再调用Update
方法即可,参考这里。这个问题也是类似情况Update method does not update zero value
网友评论