Использование сводных таблиц с дополнительным отношением - PullRequest
0 голосов
/ 29 апреля 2020

В моем приложении Laravel есть Центр , который может иметь Типы документов и Документы . Эти типы документов, по сути, представляют собой список типов документов, которые должен иметь центр, и включают такие вещи, как PAT Test.

Вот отношения:

  • Многие центры могут иметь много типов документов, через сводная таблица с именем centre_document_types
  • В центр может быть загружено много документов

Дело в том, что для каждого определенного типа документа необходимо загрузить соответствующий документ.

Чтобы сделать так, чтобы вы могли загружать документ для каждого типа документа по центру, я добавил дополнительный столбец к указанной сводной таблице:

$table->id();
$table->integer('centre_id')->unsigned();
$table->integer('document_type_id')->unsigned();
$table->integer('document_id')->unsigned()->nullable();

Так, если бы в центре 1 был тип документа 1, вы бы загрузили документ и передать этот идентификатор документа в сводную таблицу, тогда вы бы сказали, что к центру 1 прикреплен документ для типа документа 1.

Это работает, но правильно ли я использую сводную таблицу, я буквально добавляю Отношение 1 к 1 из сводной таблицы к обычной таблице.

Это плохая практика?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...