Поверьте. Бекендеру не легко врубиться в эту анархию, которая происходила с фронтэндом, за которым не следил уже лет 5 как.
Но дело не в этом. Мне не очень верится чтоб подключить одну какую-то такой библиотеку (или правильней - модуля) нужно возводить целый нефтеперерабатывающий завод и рядом еще строить мегаполис. Должен быть способ попроще, наверное...
Я не знаю. Doctrine вообще не юзал.
Мое мнение - огромная часть магической силы лари как раз в Eloquent.
И зачем вы хотите обращаться к relations, если у вас в каждой "такой сущности" уже будут сложены все поля. И в этом случае, если вас не устраивают подзапросы (хотя в них ничего нет криминального), можно воспользоваться билдером от Eloquent и не лепить монстра в виде Doctrine ради обычных join'ов... И кстати не факт что у вас там это тоже получится...
Методы, что рекомендуют выше, они достаточно полезны и визуально могут помогать при чтении такого кода. Но при их добавлении в ваш класс для работы с БД, конечно, старайтесь избегать дублирования кода.
Если всегда возвращает массив, значит скорее всего выполняет одну функцию. То есть используя ваш $options вы задаете параметры для последующего запроса, ответ на который будет всегда список. То есть все, вроде, правильно. Единственное, чтоб я порекомендовал - это изменить название с getAll() на какой нибудь get().
Ну так $user_id и $friend_id это переменные для примера. Вы же как-то получаете в вашем контроллере идентификаторы первого и второго пользователей. Подсавляем их вместо этих переменных (или в эти переменные) и вуаля.
Ну судя по коду, вы уже подгрузили данные через load(). Значит дополнительных запросов не должно быть.
Поставьте себе вот это: barryvdh/laravel-debugbar
Там в панельке наглядно видно что и как происходит
Александр Шаповал, Не странно. Сделайте одним RAW-запросом, если нужно. А у ORM имеются свои особенности в плане того что каждая модель, как отдельная сущность, должна и обрабатываться отдельно...
Darklt, Да. Ну я тогда не знаю что у вас там не так...
Пример кода я вам привел - он даже рабочий. Что там за тараканы в вашем коде я не знаю. Работайте
Вы меня спрашиваете? Откуда я знаю. Система запустилась запускайтесь и сервисы.
Подробно что делаю: