在yajra/laravel-datatables中,我想确定当前模型是否被软删除。 如果将其删除,则success
引导类适用于包含该模型详细信息的行。
这是我的后端代码:
$courses =
Course::select(['course_id', 'title', 'start_date', 'end_date', 'picture', 'lesson_count', 'status', 'active', 'teacher','start_date','end_date','reg_start_date','reg_end_date']);
if ($request->has('showDeleted') && $request->get('showDeleted') == 1) {
$courses = $courses->withTrashed();
}
$datatable = app('datatables')->of($courses)
->orderBy('created_at', 'desc')
//columns come here
->setRowClass(function ($course) {
return ($course->trashed() ? 'danger' : 'sdasd');
});
return $datatable->make(true);
如您所见,我使用了:
->setRowClass(function ($course) {
return ($course->trashed() ? 'danger' : ' ');
});
应用所需的类 但是$course->trashed
始终为所有模型实例返回 false,即使那些实例没有被丢弃。
什么是最佳解决方案?
我找到了解决方案。我应该在select
方法的列选择中包含deleted_at
字段是我的错误:
$courses =
Course::select(['course_id', 'title', 'start_date', 'end_date', 'picture', 'lesson_count', 'status', 'active', 'teacher','start_date','end_date','reg_start_date','reg_end_date','deleted_at']);