如何将参数传递给 laravel4.2 中的过滤器
how to pass arguments to filter in laravel4.2
在我的项目中,我想通过'user_id'过滤检查。
这是 isAdmin 函数:
public function isAdmin($id){
$user=User::find($id);
if($user->role==10){
return true;
}
return false;
}
这是我的路线文件:
Route::group(array('before'=>'admin'),function(){
Route::get('dashboard','UserController@Dashboard');
});
这是我想给 user_id ($id) 的滤镜,我不知道怎么给。
Route::filter('admin',function($id)
{
if(Auth::guest() or ! Auth::user()->isAdmin($id))
return Redirect::guest('user/logout');
});
对于这种情况,您可以像这样直接从过滤器中检查:
Route::filter('admin',function()
{
if(Auth::guest() or Auth::user()->role != 10)
return Redirect::guest('user/logout');
});
您不需要传递参数。
如果你真的想传递参数,也可以看看这个link。
Link Laravel 文档:here
在我的项目中,我想通过'user_id'过滤检查。
这是 isAdmin 函数:
public function isAdmin($id){
$user=User::find($id);
if($user->role==10){
return true;
}
return false;
}
这是我的路线文件:
Route::group(array('before'=>'admin'),function(){
Route::get('dashboard','UserController@Dashboard');
});
这是我想给 user_id ($id) 的滤镜,我不知道怎么给。
Route::filter('admin',function($id)
{
if(Auth::guest() or ! Auth::user()->isAdmin($id))
return Redirect::guest('user/logout');
});
对于这种情况,您可以像这样直接从过滤器中检查:
Route::filter('admin',function()
{
if(Auth::guest() or Auth::user()->role != 10)
return Redirect::guest('user/logout');
});
您不需要传递参数。
如果你真的想传递参数,也可以看看这个link。
Link Laravel 文档:here