создать hasMany или отношения один ко многим из сводной таблицы — Laravel

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

Компании

Товары

Изображений

Сейчас, Компании а также Товары являются Много ко многим отношения.

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

Примечание. В таблице «Продукты» представлены только общие данные, т. Е. У нее нет цены, статуса и т. Д.… Продукт дополняется только сводными столбцами, потому что именно так он делает продукт уникальным для каждой компании.

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

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

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

В итоге,

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

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

0

Решение

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

Illuminate\Database\Eloquent\Relations\Pivot

вместо

Illuminate\Database\Eloquent\Model,

0

Другие решения

Других решений пока нет …