У меня есть глобальная область запроса под названием ArchiveScope, которая имитирует аналогичную функциональность Soft Deletion.Метод применения этой области выглядит следующим образом:
public function apply(Builder $builder, Model $model)
{
$builder->where('archived_at', '=', NULL);
}
Поэтому, когда я использую MyModel::all()
, он возвращает все строки, которые не имеют метки времени (т. Е. NULL).Но когда я хочу получить все записи (включая архивированные), я все равно получаю тот же результат.Я запускаю это утверждение в повозке:
App\MyModel::withoutGlobalScope(ArchiveScope::class)->get();
Странно, когда я использую withoutGlobalScopes()
вместо withoutGlobalScope(ArchiveScope::class)
, я получаю все записи.
App\MyModel::withoutGlobalScopes()->get();