我开发了一个使用laravel
的系统,我的系统有一种用户如何能做一些特殊的操作,叫做MASTER。
他是唯一一种如何创建/编辑事物的用户。但是,具有"读取"权限的用户可以读取(显示方法)。
有一种方法可以为发布方法应用过滤器?
注意:我使用laravel "Route::resource"
,因此将它们分组并应用过滤器,尽管更合乎逻辑和容易的事实,这不是一件容易的事。
您可以直接在控制器中注册过滤器,如此处所述
这将适用于所有 POST 请求:
public function __construct()
{
$this->beforeFilter('permission', array('on' => 'post'));
}
或者对于某些特定的控制器方法:
$this->beforeFilter('permission', array('only' => array('create', 'edit', 'store', 'update', 'delete'));
但是,在这种情况下,最简单的事情可能是指定允许每个人调用的方法:
$this->beforeFilter('permission', array('except' => array('index', 'show')));