【问题标题】:how to pass arguments to filter in laravel4.2如何在laravel 4.2中将参数传递给过滤器
【发布时间】:2015-03-22 06:41:01
【问题描述】:

在我的项目中,我想将“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');

});

【问题讨论】:

    标签: laravel-4


    【解决方案1】:

    对于这种情况,您可以像这样直接从过滤器中检查:

    Route::filter('admin',function()
    {
        if(Auth::guest() or Auth::user()->role != 10)
            return Redirect::guest('user/logout');
    });
    

    你不需要传递参数。

    如果你真的想传递参数,也可以看看这个link

    Laravel 文档链接:here

    【讨论】:

      猜你喜欢
      • 2013-08-17
      • 2018-04-14
      • 1970-01-01
      • 2016-04-17
      • 2021-12-02
      • 2012-07-29
      • 2012-07-30
      相关资源
      最近更新 更多