Route :: when()不使用Laravel 4

时间:2013-05-31 15:07:54

标签: php laravel laravel-4

我有这个基本代码:

Route::controller('admin', 'AdminController');
Route::when('admin/*', 'admin-auth');
Route::filter('admin-auth',function(){
if(!Auth::user())
        return Redirect::to('login');
});

显然,当我运行我的应用程序时,Laravel 4路由无法运行身份验证检查。

在我看来,他们改造了Laravel 4中Laravel 3中的“模式”捕捉。

3 个答案:

答案 0 :(得分:1)

尝试:

Route::when('admin*', 'admin-auth');

而不是:

Route::when('admin/*', 'admin-auth');

答案 1 :(得分:0)

尝试像这样调用你的路线..

Route::when('admin/*', ['before' => 'admin-auth', 'uses' => 'adminController@indexAction']);

当执行Route :: get / post不确定何时使用时,这将起作用..只是fyi。

答案 2 :(得分:0)

你必须在app / filters.php中为你编写Route :: when()过滤器 只需将Route :: when('admin *','auth')移动到app / filters.php,路径admin将需要登录

只是假设普通登录功能就是你要找的地方,所以只使用了laravel auth过滤器。