@zzmaster

Symfony как получить createQueryBuilder в Entity классе?

Ok, я знаю путь через репозиторий, который мне после PHPActiveRecord кажется уродливым. Методы сущности логичней всего вызывать из самой сущности. Например, я хочу получить список VIP друзей юзера.
class User {

public function vipFriends()
    return Получить\както\QueryBuilder(...)->клазуы()->разные();
}


Можно этого как-то добиться?
  • Вопрос задан
  • 105 просмотров
Пригласить эксперта
Ответы на вопрос 1
@sl0
1. Если друзья у пользователя заданы коллекцией (OneToMany, ManyToMany), то получить этих друзей можно прямо в сущности безо всякого qb.
2. Сущность должна быть чистой. Не надо пихать в нее какие-то зависимости, особенно из фреймворка.
3. Стоит учесть, что доктрина довольно прожорлива. Получить список связанных сущностей как описано в п.1 на больших коллекциях может быть чревато выжиранием памяти под чистую.
4. Доктрина - ORM, а не AR. Хочется пользоваться AR - на здоровье, симфони это позволяет, но не надо переделывать орм под ар-ные методы, получится жуткий и кривой Франкенштейн.
Ответ написан
Ваш ответ на вопрос

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

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