我有这个基本代码:
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中的“模式”捕捉。
答案 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过滤器。