为控制器中的一个方法添加一个中间件 - Laravel

Cha*_*thi 1 laravel

有一个中间件被调用ageCheck,一个控制器被调用MyController,它具有以下返回视图的方法。

index();
show();
edit();
Run Code Online (Sandbox Code Playgroud)

如何在MyController.

我试过这个,但它不起作用!

路线.php:

Route::get('/edit', [
  'middleware' => 'ageCheck',
  'MyController@edit'
]);
Run Code Online (Sandbox Code Playgroud)

Dou*_*aan 6

您可以将其添加到您定义的路线的末尾:

Route::get('/edit', 'MyController@edit')->middleware('ageCheck');
Run Code Online (Sandbox Code Playgroud)

文档

另一种选择是将其放入类的构造中:

class Mycontroller {

    public function __construct() {
        $this->middleware('ageCheck')->only('edit');
    }
Run Code Online (Sandbox Code Playgroud)

文档