В моем классе контроллеров я выбираю все специальные предложения ресторана, которые принадлежат зарегистрированному в данный момент пользователю, вместе с типом кухни особого, а также рестораном, к которому принадлежит особенное.
Я использую следующий фрагмент:
public function edit(Special $special)
{
dd($special->with('restaurants')->with('cuisines')->get()->keyBy('id')->toArray());
}
Это производит:
-> keyBy ('id') метод позволяет мне установить «Специальный» ключ массива в качестве идентификатора записи в базе данных.
Однако я не могу понять, как установить ключи массива записи отношений вих соответствующие идентификаторы.
Например,Первый элемент в массиве ресторанов должен иметь ключ «1».Первый элемент в массиве кухонь должен иметь ключ «25».
Я пробовал что-то вроде этого:
$special->with('restaurants')->keyBy('id')->with('cuisines')->keyBy('id')->get()->keyBy('id')->toArray()
, который выдает: Метод Illuminate \ Database \ Query \ Builder :: keyBy не существует.
В моей таблице кухонь и ресторанов есть столбец идентификатора первичного ключа.