仅授权具有公共ID的人查看某些内容(LARAVEL)

时间:2016-12-13 16:02:01

标签: php laravel

我在DB中有这样的东西:

UserID: 1
ClubID: 1

UserID: 2
ClubID: 1

UserID: 3
ClubID: 2

我需要用户1和2可以看到mypage / club / 1,因为他们在同一个俱乐部,但不是用户3。

这是我到目前为止所得到的:

这是我的中间件

class IDmiddleware
{
    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     */
    public function handle($request, Closure $next)
    {
        if(Auth::user()->ClubID != $request->id){
            return redirect ('/');
        }
        return $next($request);
    }
}

然后我将它添加到内核中的routemiddleware中:

'id' => IDmiddleware::class

然后我做路由:

Route::group(['middleware' => 'id'], function ($id) {

    Route::get('/clubID/{id}');
});

但它不起作用。经过身份验证的每个人都可以看到它任何解决方案?

0 个答案:

没有答案