Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 07.02.2020 01:21:04

Не создается foreign key

Почему-то не хочет создаваться foreign key в таблице jobs

  Schema::create('channels', function (Blueprint $table) {
            $table->integerIncrements('id');
            $table->string('title');
            $table->string('link',3000);
            $table->string('logo')->nullable();
            $table->boolean('is_parsed')->nullable();
            $table->dateTime('created_at')->nullable();
            $table->dateTime('updated_at')->nullable();
            $table->dateTime('last_check_at')->nullable();
        });
 Schema::create('jobs', function (Blueprint $table) {
            $table->integerIncrements('id');
            $table->string('title');
            $table->integer('channel_id');
            $table->text('description');
            $table->string('link', 3000);
            $table->string('guid', 3000);
            $table->dateTime('pubDate')->nullable();
            $table->dateTime('created_at')->nullable();
            $table->foreign('channel_id')->references('id')->on('channels')->onDelete('cascade');
            $table->index('channel_id');
        });

Не в сети

#2 07.02.2020 21:16:14

Re: Не создается foreign key

+ то же самое Такая ошибка получается SQLSTATE[42P01]: Undefined table: 7 ERROR:  relation "roles" does not exist (SQL: alter table "users" add constraint "users_role_id_foreign" foreign key ("role_id") references "roles" ("id_role"))

Не в сети

#3 08.02.2020 15:21:33

Re: Не создается foreign key

Парни, миграция или её откат могут стопориться даже когда сама миграция выглядит ок, но перед этим была неудачная попытка — в итоге записи в таболице migrations и реальное положение дел не синхронизированы.
Надо всегда быть готовым вмешаться напрямую через phpmyadmin (или что там вы используете) и всё поправить. Используя глаза и мозг. А потом попытаться снова запустить миграции.

@proger_online ты вообще не написал как выглядит ошибка, тебе невозможно ничего конкретного подсказать.
@Smile ну если написано, что roles нет, то скорее всего его нет. См. выше — возможно это последствия другой ошибки.


There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.

Не в сети

#4 09.02.2020 12:00:09

Re: Не создается foreign key

проблема была в том что оба типа надо было дедалать unsigned, по умолчанию laravelэто не делает) Спасибо)

Не в сети

Подвал раздела