使用以下模型:
type User struct {
UUID string `gorm:"primary_key"`
Name string `gorm:"NOT NULL"`
CreatedAt time.Time
UpdatedAt time.Time
}
如果您对不存在不存在的用户使用go-gorm进行以下查询:
var user User
db.First(&user)
您最终收到一个空的结构,其中填充了日期字段。有没有一种方法可以反过来只收到一个nil
结构,还是我以错误的方式考虑了这个问题?
答案 0 :(得分:3)
在gorm中,您应该使用方法调用来检查记录是否为空
angular.json
答案 1 :(得分:0)
有了这个模型
type User struct {
UUID string `gorm:"primary_key"`
Name string `gorm:"NOT NULL"`
CreatedAt time.Time
UpdatedAt time.Time
}
var user *User
db.First(&user)
var user User
if db.First(&user).RecordNotFound(){
//record not found
}
答案 2 :(得分:-1)
添加指针功能
func (user User) Pointer() *User {
var t time.Time
if user.UUID == "" && user.Name == "" && user.CreatedAt == t && user.UpdatedAt == t {
return nil
}
return &user
}
并通过
var user User
db.First(user.Pointer())