gorm添加Unscoped()查询不添加deleted_at is null
查询默认添加deleted_at IS NULL,若想查询包含删除的数据可添加
db = db.Unscoped()
gorm的Unscoped方法设置tx.Statement.Unscoped为true;针对软删除会追加SoftDeleteDeleteClause,即设置deleted_at为指定的时间戳;而callbacks的Delete方法在db.Statement.Unscoped为false的时候才追加db.Statement.Schema.DeleteClauses,而Unscoped则执行的是物理删除。
发表评论: