php - Laravel中间件获取路由参数

标签 php laravel

我正在编写“学校俱乐部管理系统”之类的代码,遇到了一些资源权限授权方面的问题。

假设有 clubclub 有 manager ,我想在他可以之前检查用户是否是 club 的经理用中间件管理它。

使用 laravel 5.2

我的 router 看起来像这样:

Route::resource('club', 'ClubController');

我创建的中间件看起来像这样:

  public function handle($request, Closure $next)
    {
        if (!Auth::check()){
            // ask user to login
        }

        $club = Club::findOrFail($request->input('club'));
        $user = Auth::user();

        if (!$club->managers->contains($user)){
            //tell user your are not manager .
        }

        return $next($request);
}

但是我没能从requests 得到俱乐部的id。

我该如何解决这个问题?

提前致谢。

最佳答案

如果您正在寻找 url 参数,下面是从中间件内的 laravel 5.2 中的资源路由获取该参数的最佳方法。假设您想从 url club/edit/{id}

获取 id 参数
$request->route()->parameter('id');

关于php - Laravel中间件获取路由参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35762302/

相关文章:

php - AddressDoctor WSDL 和 PHP

php - 按数字键和字符串键对数组进行排序

php - Cookie session 驱动程序不会保存任何验证错误或闪存数据

php - Laravel 4.x 在执行联接时使用 Eloquent 给表起别名

php - 如何在laravel中以特定id的模式显示数据?

php - Laravel Auth修改两种用户

php - Mysql XAMPP 不要将负值插入行中

TCPDF 的 PHP 循环

javascript - 如何将 css 文件插入其中而不是声明颜色

php - 将对象存储到数组中并在 PHP 中将所有具有相同值的数组分组