【go】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

}

【go】gorm 的预加载怎么才能关掉软删除

已解决 return db.Select("id,type_name,created_at").Unscoped() 闭包里面加上.Unscoped ()

回答

以上是 【go】gorm 的预加载怎么才能关掉软删除 的全部内容, 来源链接: utcz.com/a/114581.html

回到顶部