gorm 的预加载怎么才能关掉软删除
type CourseType struct {
gorm.Model
TypeName string
CreatedAt time.Time
UpdatedAt time.Time
}
type Course struct {
gorm.Model
Title string
Price int32
CourseTypeId int32 `gorm:"index;unsigned"`
CourseType CourseType
CreatedAt time.Time
UpdatedAt time.Time
DeletedAt *time.Time
}
/*
* @fuc 获取课程
*/
func SelectCourse(p map[string]string) (Course, error) {
var course Course
mydb := db.GetInstance().GetMysqlDB()
err := mydb.Debug().Preload("CourseType", func(db *gorm.DB) *gorm.DB {
return db.Select("id,type_name")
}).Where("id = ?", p["id"]).Find(&course).Error
if err != nil {
return Course{}, errors.New("查询失败")
}
return course, nil
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
已解决
return db.Select("id,type_name,created_at").Unscoped()
闭包里面加上.Unscoped ()