@GrimJack

Как сделать связь «по требованию»?

Добрый день
Есть связь в таблице на саму себя (linked_record_id ссылается на record_id)
Однако не всегда она может быть. Для тех у кого нет связи хочу ставить linked_record_id = 0
Однако падаю с ошибкой -
Foreign key violation: 7 ERROR: insert or update on table "records" violates foreign key constraint "records_linked_record_id_foreign"
DETAIL: Key (linked_record_id)=(0) is not present in table "records". (SQL: insert into "records" ("linked_record_id", "company_id", "form_id", "uuid", "updated_at", "created_at") values (0, 1, 1, c4cf5827-447f-355f-bee9-57c3a7fc84f7, 2017-08-21 14:57:46, 2017-08-21 14:57:46) returning "record_id")

Как быть?
В качестве БД - postgres
В качестве бэка - laravel 5.4

Как правильно прокинуть связь?
Сейчас связь на уровне бд
h_1503327595_9414218_8ce5222d55.png
  • Вопрос задан
  • 275 просмотров
Пригласить эксперта
Ответы на вопрос 1
@vanillathunder
$table->...->onDelete('set null');


$table->integer('foreign_id')->unsigned()->nullable();

Нужно устанавливать не 0, а null.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы