У пользователя нет необходимых прав доступа Laravel 6 - PullRequest
0 голосов
/ 26 января 2020

Я пытаюсь получить доступ к панели управления как супер-администратор. Я использовал laratrust для установки ролей и разрешений: laratrustSeeder. php Файл:

 <?php

return [
    'role_structure' => [
       'super_admin' => [
            'users' => 'c,r,u,d',
            'categories' => 'c,r,u,d'

        ],

databaseSeeder. php:

public function run()
{
    // $this->call(UsersTableSeeder::class);
    $this->call([
        LaratrustSeeder::class,
        UsersTableSeeder::class,
    ]);

my UsersTableSeeder. php

 public function run()
    {
        //

        $user = App\User::create([
            'name'=>'super_admin',
            'email'=>'super_admin@app.com',
            'password'=>bcrypt('123456'),
        ]);

        $user->attachRole('super_admin');
    } //end of run

И вот мой маршрут:

 Route::prefix('dashboard')
->name('dashboard.')
->middleware(['auth','role:super_admin|admin'])
->group(function(){

//make route dashboard.welcome
Route::get('/', 'WelcomeController@index')->name('welcome');
//make route categories:
Route::resource('categories','CategoryController')->except(['show']);
Route::resource('roles','RoleController')->except(['show']);

});

phpMyadmin DB

Теперь я вхожу при успешном использовании super_admin НО НЕ МОЖЕТ просматривать панель инструментов, я получил ошибку 403: у пользователя нет необходимых прав доступа.

1 Ответ

0 голосов
/ 26 января 2020

Я решил это, изменив роль в Rote на заглавную букву: Super_admin не super_admin.

->middleware(['auth','role:Super_admin|admin']) 

вместо:

    ->middleware(['auth','role:super_admin|admin'])
...