У меня есть 3 имени таблицы, такие как "product", "user", "product_type", поэтому в моем случае user и product_type, имеющие отношения «многие ко многим» и пользователь и продукт, имеющие отношение один ко многим и product и product_type имеют отношение один к одному.
Я создаю одну сводную таблицу для пользователя и product_type. внутри этой сводной таблицы я добавил еще один столбец для описания. поэтому на странице со списком продуктов мне нужно отобразить описание из этой сводной таблицы.
Мой код выглядит так:
Product::with('user)->with('product_type')->get();
извините, я имею в виду product_type, на самом деле Product::with(['user'=>function($q){$q->with('product_type')}])->with('product_type')-> получить(); приведенный выше код предоставляет данные сводной таблицы. Но мне нужно заполнить файл, используя product_type_id.






Чтобы получить дополнительные поля из сводной таблицы, вам нужно использовать withPivot в функции вашей модели. Вот так:
public function product_type() {
return $this->belongsToMany('App\Product','product_type','product_id','user_id')->withPivot('column1', 'column2');
}
вы также можете сослаться на документацию laravel:
https://laravel.com/docs/5.7/eloquent-relationships
Я уже все сделал, и я получаю данные с помощью этого запроса. на самом деле Product::with(['user'=>function($q){$q->with('product_type')}])->with('product_type')->get(); приведенный выше код предоставляет данные сводной таблицы. Но мне нужно заполнить файл, используя product_type_id. В настоящее время я управляю этими вещами из внешнего интерфейса.
Прежде всего используйте этот способ для получения данных => Product::with('user.product_type')->get(); А можешь объяснить, что именно ты хочешь?
Я получаю все типы продуктов и связанные с ними сводные данные под пользователем. Мне нужно получить один тип продукта, связанный с этой таблицей продуктов. NB: product и product_type имеют отношение один к одному, таблица product имеет product_type_id
Вы имеете в виду, что «пользователь и product_type имеют отношения «многие ко многим»» или вы имеете в виду, что у вас также есть таблица
account_type?