gorm创建记录,NewRecord和Create有什么区别?

gorm创建记录,NewRecord和Create有什么区别?代码如下:

user := User{Name: "Jinzhu", Age: 18, Birthday: time.Now()}
db.NewRecord(user) // => 主键为空返回`true`
db.Create(&user)
db.NewRecord(user) // => 创建`user`后返回`false`

代码来自文档: http://gorm.io/zh_CN/docs/cre...

阅读 10.1k
2 个回答
  • NewRecord 检查主键是否存在
  • Create 即执行 insert 操作

详细可以参考这篇stackoverflow链接

1.返回值不同
2.从代码上来看,NewRecord操作是没有带钩子的,Create有

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题