Laravel 是否在模型显示时禁用全局范围?

Laravel 是否在模型显示时禁用全局范围?,laravel,Laravel,我有一个叫做project的模型,可以存档。存档项目不会显示在索引页上,我通过在项目模型上使用全局范围来实现这一点: class ArchiveScope implements Scope { public function apply(Builder $builder, Model $model) { $builder->where('archived', false); } } 在项目模型中,我有: protected static funct

我有一个叫做project的模型,可以存档。存档项目不会显示在索引页上,我通过在项目模型上使用全局范围来实现这一点:

class ArchiveScope implements Scope
{
    public function apply(Builder $builder, Model $model)
    {
        $builder->where('archived', false);
    }
}
在项目模型中,我有:

protected static function boot()
    {
        parent::boot();

        static::addGlobalScope(new ArchiveScope);
    }
但是,我有一个页面,显示所有存档的项目,用户应该能够单击每个项目,查看内容,并在需要时取消存档项目。但由于全局范围,它将不显示项目。当我转到位于/projects/{project_id}的存档项目时,它给出404未找到错误。我如何在没有环球镜的情况下申请项目的展示运营

谢谢。

你能行

Project::withoutGlobalScope(ArchiveScope::class)->get();
Project::withoutGlobalScope(ArchiveScope::class)->get();
你能做到

Project::withoutGlobalScope(ArchiveScope::class)->get();
Project::withoutGlobalScope(ArchiveScope::class)->get();
这是你的事:

如果要删除所有全局作用域,请执行以下操作:

Model::withoutGlobalScopes()->get();
或者,如果您想删除其中一些:

Model::withoutGlobalScopes([
    Model1::class, Model2::class, etc...
])->get();
在你的情况下,你可以写:

这是你的事:

如果要删除所有全局作用域,请执行以下操作:

Model::withoutGlobalScopes()->get();
或者,如果您想删除其中一些:

Model::withoutGlobalScopes([
    Model1::class, Model2::class, etc...
])->get();
在你的情况下,你可以写: