mik*_*ana 11 php laravel laravel-4
我有一个资源控制器Items:
Route::resource('items', 'ItemsController');
Run Code Online (Sandbox Code Playgroud)
在ItemsController@store创建新项目的行动中,我需要在使用表单进行操作之前激活CSRF filter(也许Auth filter).但我不能写
$this->beforeFilter('csrf')
Run Code Online (Sandbox Code Playgroud)
它不起作用.当我把这个调用放在父控制器中时,它可以正常工作__construct().
我需要做些什么才能直接为资源控制器操作调用一些过滤器?
mst*_*rdy 12
您应该只能通过以下方式设置过滤器来执行特定操作__construct():
class ItemsController extends BaseController
{
public function __construct()
{
$this->beforeFilter('csrf', array('on' => 'store') );
}
//rest of controller...
}
Run Code Online (Sandbox Code Playgroud)
注 - 您还可以使用关键字"only"和"except",并传递一系列操作名称以应用(或否定)多个操作的过滤器.
| 归档时间: |
|
| 查看次数: |
3529 次 |
| 最近记录: |