Мне нравится создавать полиморфные отношения, и я не уверен, что я делаю правильный путь в моем случае?Настройка полиморфных отношений?
У меня есть description_groups
стол, и он принадлежит ко многим descriptions
В отношении к Laravel полиморфного отношения, таблица, такие как customers
и orders
может иметь много descriptions
Вот схема базы данных я придумал:
description_groups
стол:
+----+----------------+
| id | name |
+----+----------------+
| 1 | Stock Movement |
+----+----------------+
descriptions
стол:
description_groups
это относится ко многому descriptions
перечисленного ниже
+----+----------------------+--------+
| id | description_group_id | name |
+----+----------------------+--------+
| 1 | 1 | Name 1 |
| 2 | 1 | Name 2 |
| 3 | 1 | Name 3 |
| 4 | 1 | Name 4 |
+----+----------------------+--------+
Использования polymorphic_table
таблицы можно определить, какие таблицы и запись может иметь описание. каково должно быть имя таблицы? Например:
+----+----------------+------------+----------+
| id | description_id | table_name | table_id |
+----+----------------+------------+----------+
| 1 | 4 | customers | 2 |
| 2 | 2 | orders | 10 |
+----+----------------+------------+----------+
customers table
:
+----+-----------------+
| id | name |
+----+-----------------+
| 1 | Customer Name 1 |
| 2 | Customer Name 2 |
| 3 | Customer Name 3 |
+----+-----------------+
Так это значит Customer Name 2
есть Name 4
описание входа, которое принадлежит Stock Movement
записи.
имя таблицы не должно быть таблица, она должна быть путь к модели, представляющей таблицу. 'App \ Customer' и' App \ Order' в порядке. Кроме того, не следует называть 'table_name', но' entity_name' и 'table_id' также должны быть' entity_id'. Чище, более прямолинейно, следует прагма дизайна Laravel. – Ohgodwhy
@Ohgodwhy Спасибо, не стесняйтесь публиковать свой ответ. 'описания' и' description_groups' отлично смотрятся на вас? –