База данных застревает при миграции с сеялкой при работе с --force в Laravel 5 - PullRequest
0 голосов
/ 22 мая 2018

База данных застревает при миграции с сеялкой при работе с --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

Ответы [ 2 ]

0 голосов
/ 10 августа 2018

У меня была такая же проблема при запуске php artisan migrate, и ничего не происходит, застрял.--force или подробности не помогли бы.

Проблема, с которой я столкнулся, заключается в том, что DB_PORT в .env был установлен неправильно.

0 голосов
/ 22 мая 2018

Попробуйте включить флаг -vvv в команду миграции, это увеличит многословность всех сообщений, что может раскрыть проблему.

- подробный (-v | vv | vvv)Увеличьте многословность сообщений: 1 для нормального вывода, 2 для более подробного вывода и 3 для отладки

$ php artisan migrate --force

Что касается самой проблемы, попробуйте включить --forceотметьте в своем вызове db:seed, как вы включили его в миграцию.

Artisan::call('db:seed', ['--class' => 'ProductsSeeder', '--force' => true,]);

...