Как получить запись, вставленную синхронизацией - PullRequest
0 голосов
/ 07 мая 2020

Есть ли способ получить запись или записи, которые были вставлены методом syn c?

Что-то вроде:

$shop_product = $shop->products()->sync(1);

, поэтому я хочу, чтобы сейчас $ shop_product был экземпляром который содержит записи

{
shop_id: 1,
product_id: 1
}

1 Ответ

1 голос
/ 07 мая 2020

Метод syn c обновляет отношение ваших товаров к магазину. Таким образом, при вызове $shop->products вам будут возвращены только продукты, которые вы синхронизировали. Нет причин для доступа к данным сводной таблицы, если у вас нет дополнительных данных. Если да, то вы должны определить в своей модели отношения, что вы этого хотите. Например:

return $this->manyToMany(.....)->withPivot(['data_field_name'])

Если вы работаете с товарами в магазине, вам, вероятно, не нужна сводная таблица. Обычно один продукт может быть связан только с одним магазином, поэтому отношение будет $ this-> hasMany (Product :: class), а в таблице продуктов будет shop_id

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