在Laravel PHP中设置控制器的正确方法
我不知道创建和使用控制器的正确方法是什么。让我们想象一下,我们有一个带有索引方法的控制器,用于显示数据库记录,我们有以下数据库结构: |id |名称|激活| 所以我只想在用户端显示活动记录,在管理端显示所有记录(活动和非活动)。从逻辑上讲,对于这两种操作,我们都会使用索引方法,对吗?我们应该为用户端使用索引方法,为管理员端创建另一个方法,还是反之亦然?在Laravel PHP中设置控制器的正确方法,php,laravel,Php,Laravel,我不知道创建和使用控制器的正确方法是什么。让我们想象一下,我们有一个带有索引方法的控制器,用于显示数据库记录,我们有以下数据库结构: |id |名称|激活| 所以我只想在用户端显示活动记录,在管理端显示所有记录(活动和非活动)。从逻辑上讲,对于这两种操作,我们都会使用索引方法,对吗?我们应该为用户端使用索引方法,为管理员端创建另一个方法,还是反之亦然? 什么是最灵活的解决方案,以便我们可以在两个视图中使用Route::resource?首先,您必须在应用程序中实现一个角色系统,并将两个角色设置为
什么是最灵活的解决方案,以便我们可以在两个视图中使用Route::resource?首先,您必须在应用程序中实现一个角色系统,并将两个角色设置为admin和user。 您可以使用多种方法进行筛选,但我建议的方法有:
祝您好运如果希望继续使用相同的方法,请仅在用户不是管理员时添加对数据库查询的限制。比如说
$query = \App\Model::query();
if( !Auth::user()->isAdmin() )
{
$query->where('active', true);
}
$records = $query->get();
要获得更清晰的语法,可以在(/*条件*/,/*带筛选器的回调*/)时使用
->
有条件地将筛选器添加到查询中。