正在从数据库中获取软删除的记录。
我已向类别模型添加了软删除。当我软删除记录时,正在设置“deleted_at”列。但是,当我使用
从数据库中获取结果时Category::latest('id')->paginate(20)
它也返回已删除的记录。
我的类别模型
class Category extends Model
{
use SoftDeletes;
protected $fillable = [
'name',
'slug',
'description',
'is_active',
'image',
];
}
使用望远镜检查查询并运行它。
select * from `categories` order by `id` desc limit 20 offset 0
但它应该运行
select * from `categories` where `deleted_at` is null order by `id` desc limit 20 offset 0
如果您在使用时看到软删除的记录
Category::latest('id')->paginate(20),
这可能是因为您需要明确告诉 Eloquent 仅获取未删除的记录。默认情况下,latest() 和 paginate() 不排除软删除记录。像下面这样-
Category::whereNull('deleted_at')->latest('id')->paginate(20);