Laravel db:seed не работает без параметра --class
Бег php artisan db:seed
почему-то не работает на моем проекте Laravel 5.6.
- Команда выполняется (тихо) даже без базы данных
- Не возвращает никаких ошибок на терминале
Тем не менее, когда я бегу php artisan db:seed --class=ClassNameTableSeeder
оно работает. Что может быть причиной такого странного поведения?
NB: Похож на вопросы типа 39521913, но не дубликат.
1 ответ
Решение
Это потому что по умолчанию DatabaseSeeder
ничего не делает. Оригинальный код в свежем проекте Laravel выглядит так:
public function run()
{
// $this->call(UsersTableSeeder::class);
}
Таким образом, чтобы запустить любую базу данных, вы должны раскомментировать эту строку и указать допустимое имя класса, например:
$this->call(ClassNameTableSeeder1::class);
$this->call(ClassNameTableSeeder2::class);
и так далее, чтобы запустить сеялки для каждого класса, который вы здесь ставите.