我创建了两个播种器类'UsersTableSeeder'和'Meetings TableSeeder'。当命令"php artisan db:seed
"被执行时,它出现:
种:用户表播种器
但是ConferenceTableSeeder不起作用。你知道为什么可以吗?
UsersTableSeeder:
class UsersTableSeeder extends Seeder
{
public function run()
{
AppUser::create([
'name' => 'John',
'email' => '',
'password' => bcrypt('password')
]);
}
}
会议桌播种机
class ConferencesTableSeeder extends Seeder
{
public function run()
{
AppEvent::create([
'name' => 'Test name',
'description' => '',
'date' => '2018-03-08 06:30:00',
...
]);
}
}
将ConferenceTableSeeder::class
添加到databaseseedsDatabaseSeeder.php
文件中
public function run()
{
$this->call(UsersTableSeeder::class);
$this->call(ConferenceTableSeeder::class);
}
当你运行php artisan db:seed
时,它会调用DatabaseSeeder
类中的run
方法,而该方法又调用其中的播种器文件
默认情况下,UsersTableSeeder
在那里,这就是为什么只有那个运行
打开此文件夹 database\seeds\DatabaseSeeder.php并在此处添加类名以运行所有播种器
编写以下代码以运行播种机文件:
public function run()
{
$this->call(UsersTableSeeder::class);
$this->call(ConferenceTableSeeder::class);
}
注意:您还可以使用以下代码运行特定的播种器文件:
php artisan db:seed --class=ConferenceTableSeeder