Laravel 4 laravel 4,其中beforefilter';第二个参数传递给?
我从文档中找到了这个示例:Laravel 4 laravel 4,其中beforefilter';第二个参数传递给?,laravel-4,Laravel 4,我从文档中找到了这个示例: class UserController extends BaseController { /** * Instantiate a new UserController instance. */ public function __construct() { $this->beforeFilter('auth', array('except' => 'ge
class UserController extends BaseController {
/**
* Instantiate a new UserController instance.
*/
public function __construct()
{
$this->beforeFilter('auth', array('except' => 'getLogin'));
$this->beforeFilter('csrf', array('on' => 'post'));
$this->afterFilter('log', array('only' =>
array('fooAction', 'barAction')));
}
}
我很困惑,因为我检查了filters.php,
然后发现,身份验证筛选器没有任何标识符:
Route::filter('auth', function()
{
if (Auth::guest()) return Redirect::guest('login');
});
我想知道beforefilter的第二个参数传递到哪里?
有人能帮忙吗?谢谢 你找错地方了。该
数组
参数未传递给auth
过滤器。它是控制器的参数。beforeFilter()
如中所示,beforeFilter()
需要两个参数:
$filter
在控制器操作之前执行的过滤器。这些过滤器就是您在filters.php
文件中看到的过滤器$options
包含要传递的筛选器选项的数组。在这种情况下,您将传递值为getLogin
的except
选项你看错地方了。该
数组
参数未传递给auth
过滤器。它是控制器的参数。beforeFilter()
如中所示,beforeFilter()
需要两个参数:
$filter
在控制器操作之前执行的过滤器。这些过滤器就是您在filters.php
文件中看到的过滤器$options
包含要传递的筛选器选项的数组。在这种情况下,您将传递值为getLogin
的except
选项我现在明白了,非常感谢Hi Manuel,你能告诉我除了“除外”之外还有什么选择吗?我试图在文档中查找,但找不到任何细节。提前感谢:-)@AbhayPS当然,看看这里:谢谢Manuel,这是一个很大的帮助。我已经找了很长时间了。我现在明白了,非常感谢Hi Manuel,你能告诉我除了“除外”之外还有什么选择吗?我试图在文档中查找,但找不到任何细节。提前感谢:-)@AbhayPS当然,看看这里:谢谢Manuel,这是一个很大的帮助。我已经找了好一阵子了。
/**
* Register a new "before" filter on the controller.
*
* @param string $filter
* @param array $options
* @return void
*/
public function beforeFilter($filter, array $options = array())
{
$options = $this->prepareFilter($filter, $options);
$this->filters[] = new Before($options);
}