База данных застревает в миграции с сеялкой на производстве с --force в Laravel. Тот же эффект у меня есть на Laravel Homestead и EC2 AWS под управлением Amazone linux. Нет сообщений в laravel.log.
Это просто никогда не заканчивается. Если я останавливаю его с помощью <ctrl>+<c>
, я вижу, что таблица создана, но сеялка не запущена, таблица пуста.
Детали:
Моя миграция:
public function up()
{
Schema::create('products', function (Blueprint $table) {
$table->increments('id');
$table->string('name', 50);
$table->decimal('price', 8, 2); //up to 999,999.99
});
Artisan::call('db:seed', ['--class' => 'ProductsSeeder']);
}
Я называю это так:
$ php artisan migrate --force
мой .env
#APP_ENV=local
APP_DEBUG=false
семена базы данных.
class ProductsSeeder extends Seeder
{
public function run()
{
DB::table('products')->insert([
'id' => 1,
'name' => 'super product',
'price' => 999.99,
]);
}
Протестировано Laravel 5.6
php artisan db:seed
из терминала? Работает ли это так, как ожидалось? Вы также можете попробовать запустить миграцию с подробным флагомphp artisan migrate --force -vvv
, чтобы узнать, получаете ли вы какие-либо сообщения об ошибках. - person Jeemusu   schedule 22.05.2018php artisan db:seed --class=[ProductsSeeder]
, то все идет нормально. - person Yevgeniy Afanasyev   schedule 22.05.2018-vvv
? Интересно, в этом случае вам также нужно добавить флаг--force
к начальному вызову, поскольку вы используете его при миграции? - person Jeemusu   schedule 22.05.2018--force
и/или-vvv
, похоже, не имеет значения. Мой конфиг правильный. - person Derk Jan Speelman   schedule 10.04.2019