Php 方法laravel的管理中间件

Php 方法laravel的管理中间件,php,laravel,laravel-5,Php,Laravel,Laravel 5,在拉雷维尔,我有一条路线: $router->get('/create', 'NewsController@create'); 和新闻控制器: public function create() { $this->middleware('user'); } 但是$this->中间件('user')不为我工作。如何仅限制对此页面的访问?您可以在构造函数中应用它 class NewsController extends Controller { public f

在拉雷维尔,我有一条路线:

$router->get('/create', 'NewsController@create');
和新闻控制器:

public function create()
{
    $this->middleware('user');


}

但是
$this->中间件('user')不为我工作。如何仅限制对此页面的访问?

您可以在构造函数中应用它

class NewsController extends Controller {


    public function __construct()
    {
        $this->middleware('user', ['only' => 'create']);
    }


    public function create()
    {
        // do stuff here
    }

如果我想让多个方法使用同一个中间件怎么办?这在我第一次尝试时就奏效了——这让我很惊讶:$This->middleware('auth',['only'=>array('create','index'));您也可以将其应用于您的路线,如下所示: