用于资源的Laravel控制器中间件

时间:2016-11-02 14:48:21

标签: php laravel-5 laravel-middleware

我正在尝试在资源路径上使用中间件。

我的路线 - > Route::resource('posts', 'PostController');

我的中间件 - >

$user = Auth::user();

    if(Auth::check()) {
        if($user->is_admin) {
           return $next($request);
        } else {
            return redirect()->route('home');
        } 
    } else {
        return redirect()->route('login');
    }

我的控制器构造函数 - >

$this->middleware('auth'); $this->middleware('admin')->only('posts.destroy');

我的目标是只让管理员破坏帖子,而不是其他人。

但是当我使用时 php artisan route:list,显示的中间件是web,auth。

我在这里做错了什么?

1 个答案:

答案 0 :(得分:1)

您可以尝试:

$this->middleware('admin')->only('destroy');

Docs

相关问题