Laravel неявная связь М:М?

Добрый день! Скажите пожалуйста насколько корректно мое решение и что стоит здесь изменить, и стоит ли изменять?
На сайте есть 2 страницы
1. Локации(Список декорированных «углов» для фотосетов)_
2. Модели(Фотомодели)
В административной панели можно создавать галереи. После создания они не привязан к какой либо странице.
Дальше при создании какой либо модели или локации можно прикрепить любое количество любых галерей.
Таблица gallery
Id, title, name, folder(путь к папке с галереей относительно папки public)
Таблица locations
Id, title, thumbnail
Таблица attached_gallery с ее помощью реализуется связь
Id, type([‘locations’,’models’]), type_id, gallery_id
В моделях я не создаю связей, а просто в контроллерах создаю экземпляр класса attached_gallery. Насколько это правильный, лаконичный путь?
И например я хочу получить id всех галерей привязанных к определенной локации то этой строкой
$gallery_ids = Attached_gallery::where ('type_id', $id )->get();
я выбираю все галереи привязанные к данной странице(локации, фотомодели)
Мне приходит многомерный массив и если я напишу вот так
$gallery = gallery::where($gallery_ids['gallery_id'])->get();
то получу Undefined index: gallery_id
как правильно построить запрос для выборки всех галерей id которых находятся в $gallery_ids['gallery_id'] . Спасибо большое!
  • Вопрос задан
  • 127 просмотров
Решения вопроса 1
Denormalization
@Denormalization
$gallery = gallery::whereIn('id', $gallery_ids->lists('id')->all())->get();
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы