PermissionDoesNotExist (нет разрешения с идентификатором 1) В пакете разрешений Laravel 5.6 - PullRequest
0 голосов
/ 21 ноября 2018

Я использую пакет разрешений spatie. Я хочу назначить разрешение для роли. Ниже приведен мой метод в контроллере:

 public function testing_role_permission()
{
  $role = Role::findById(2);
  $permission = Permission::findById(1);
  $role->givePermissionTo($permission);

}

Показывает исключение PermissionDoesNotExist Нет [разрешение] с идентификатором 1.

До этого работал тот же метод и было назначено разрешение для роли. Но я создаю некоторые новые разрешения в PermissionTableSeeder. После этого он не работает. Я искалмного попыток очистить кеш, но с этим исключением ничего не происходит.

PermissionTableSeeder.php

use Illuminate\Database\Seeder;
use Spatie\Permission\Models\Role;
use Spatie\Permission\Models\Permission;
class PermissionTableSeeder extends Seeder
{
/**
 * Run the database seeds.
 *
 * @return void
 */
public function run()
{

    app()[\Spatie\Permission\PermissionRegistrar::class]- 
    >forgetCachedPermissions();
    //role permissions
     Permission::create(['name' => 'create_role']);
     Permission::create(['name' => 'read_role']);
     Permission::create(['name' => 'update_role']);
     Permission::create(['name' => 'delete_role']);
     Permission::create(['name' => 'disable_role']);
     Permission::create(['name' => 'isolation_role']);
    }
    }

Как решить эту ошибку?

Заранее спасибо!

...