我正在使用spatie / laravel-permission软件包来获取角色和权限
但是在种子永久角色和权限中遇到问题的是数据库列表链接
我制作了这些用于播种的数据集
$this->call(UsersTableSeeder::class);
$this->call(PermissionsTableSeeder::class);
$this->call(RolesTableSeeder::class);
$this->call(RolehaspermissionTableSeeder::class);
$this->call(ModelhasrolesTableSeeder::class);
permissiontableseeder
DB::table('roles')->insert([
'name' => 'Administrator',
'guard_name' => 'web',
]);
RoleTableSeeder
DB::table('roles')->insert([
'name' => 'Admin',
'guard_name' => 'web',
]);
RolehaspermissionTableSeeder
DB::table('role_has_permissions')->insert([
'permission_id' => '1',
'role_id' => '1',
]);
ModelhasrolesTableSeeder
DB::table('model_has_roles')->insert([
'role_id' => '1',
'model_id' => '1',
'model_type' => 'App\User',
]);
这是错误的屏幕截图
帮助我获得种子谢谢
答案 0 :(得分:1)
检查表名
DB::table('roles')->insert([
'name' => 'Administrator',
'guard_name' => 'web',
]);
on permissionstableseeder
这应该是这样的
DB::table('permissions')->insert([
'name' => 'Administrator',
'guard_name' => 'web',
]);
希望这可以帮助你
答案 1 :(得分:0)
我们可以这样做...
$coursesIDs = DB::table('courses')->pluck('id');
$studentsIDs= DB::table('students')->pluck('id');
foreach (range(1,50) as $index) {
DB::table('course_student')->insert([
'course_id' => $faker->randomElement($coursesIDs)
'student_id' => $faker->randomElement($studentsIDs)
]);
}