Gorm Save Create 方法如何捕获错误?

4 min read

在 Gorm 中,Create 和 Save 方法都是用于向数据库中添加新记录的方法。可以通过检查返回的 error 参数来捕获错误。

创建新记录时,可以通过在模型的字段上添加验证规则来确保字段的正确性。如果某个字段没有通过验证,则会在创建新记录时返回错误。

示例代码:

type User struct {
    ID   uint   `gorm:"primaryKey"`
    Name string `gorm:"unique;not null"`
    Age  uint   `gorm:"not null"`
}

// 创建新记录
func CreateUser(name string, age uint) error {
    u := &User{Name: name, Age: age}
    err := db.Create(u).Error
    if err != nil {
        return err
    }
    return nil
}

上面的代码通过调用 db.Create 方法向数据库中添加新的 User 记录。如果创建过程中出现错误,则会返回错误信息。可以在外部捕获该错误并进行处理。

注意,当使用 Save 方法更新记录时,也可以通过检查返回的 error 参数来捕获错误。但是,在更新记录时,不会进行字段验证。