создать hasMany или отношения один ко многим из сводной таблицы - Laravel - PullRequest
0 голосов
/ 06 декабря 2018

У меня есть 3 таблицы:

Компании

Продукты

Изображения

Теперь Компании и Продукты имеют отношение Многие ко многим .

То есть одна компания может иметь много продуктов, а один продукт может принадлежать нескольким компаниям.Итак, у меня есть сводная таблица с именем companies_products с сводными или дополнительными столбцами, такими как: цена, скидка, статус и т. Д. *

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

Пока все здесь хорошо.Теперь, потому что сводная таблица представляет собой уникальные cols продукта для каждой компании.Я также хочу прикрепить таблицу product-images к этой сводной таблице.Это означает, что моя структура будет каждой строкой сводки hasMany product_images.

Но в Laravel, я полагаю, в сводных таблицах нет модели, поэтому делать это не рекомендуется.Тогда, как достичь много-много с помощью сводной таблицы?

Или какое-нибудь лучшее решение для структурирования моих таблиц или данных?

В итоге,

У меня есть 1 таблица компаний и 1 таблица продуктов (уникальная).

компании создают конечный продукт, добавляя дополнительные данные и изображения (массив).Я могу обрабатывать дополнительные данные, которые представляют собой сводные столбцы, но не изображения (которые в данном случае представляют собой массив изображений. У меня не может быть 1 ко многим непосредственно на уровне таблицы продуктов, потому что каждая компания добавляет продукт с дополнительными данными к нему.

1 Ответ

0 голосов
/ 06 декабря 2018

Вы можете определить модель для сводной таблицы.Он описан в Определение пользовательских промежуточных таблиц моделей документов.Для этого класс вашей модели должен быть расширен:

Illuminate\Database\Eloquent\Relations\Pivot

вместо

Illuminate\Database\Eloquent\Model.

...