gorm为什么不在日志中报告插入错误?

时间:2018-08-19 15:57:49

标签: go go-gorm

我尝试使用GORM执行插入,并且我的日志显示插入语句并说

  

0行受到影响或返回

如果我复制并粘贴插入语句,则可以在psql中看到此错误:

  

错误:“ start_dt”列中的空值违反了非空约束

我是否可以立即在自己的运行日志中看到此错误?

3 个答案:

答案 0 :(得分:1)

您必须在插入语句的末尾附加.Error,以便GORM返回错误消息(如果有)。另外,您可以使用.GetErrors()来获取所有引发的错误。

答案 1 :(得分:1)

您应该在调试模式下使用gorm查看错误消息!

// Enable Logger, show detailed log
db.LogMode(true)

// Disable Logger, don't show any log even errors
db.LogMode(false)

// Debug a single operation, show detailed log for this operation
db.Debug().Where("name = ?", "jinzhu").First(&User{})

Gorm documentation for Logger

答案 2 :(得分:0)

if err := db.Create(&entity).Error; err != nil {
  fmt.Println(err.Error())
}