BadMethodCallException 调用未定义的方法 App\Models\User::hasAnyRole()

And*_*sko 4 php laravel laravel-permission laravel-ui

我正在使用 Laravel-Permissions 并在 rotes\web.php 中写入:

Route::group(['middleware' => ['role:admin']], function () {
    Route::get('/admin', function () {
        return "Test";
    });
});
Run Code Online (Sandbox Code Playgroud)

我在 app\Http\Kernel.php 中添加:

protected $routeMiddleware = [
    // ...
    'role' => \Spatie\Permission\Middlewares\RoleMiddleware::class,
    'permission' => \Spatie\Permission\Middlewares\PermissionMiddleware::class,
    'role_or_permission' => \Spatie\Permission\Middlewares\RoleOrPermissionMiddleware::class,
];
Run Code Online (Sandbox Code Playgroud)

错误:

在此输入图像描述

N69*_*69S 6

您忘记包含角色特征

use Illuminate\Foundation\Auth\User as Authenticatable;
use Spatie\Permission\Traits\HasRoles;

class User extends Authenticatable
{
    use HasRoles; //this line

    // ...
}
Run Code Online (Sandbox Code Playgroud)