Я использую Doctrine 1.2 с Symfony 1.4 для написания запросов. Я понял принципы DQL, и у меня есть несколько запросов, которые отлично работают. Но для некоторых нужд я не нахожу решения в DQL и вместо этого использую SQL.
Вот простой пример: предположим, что у вас есть в вашем schema.yml класс sfguarduserprofile с отношением к классу города (используя city_id в профиле). И что у вас есть связь между классом города и классом страны (используя country_id в классе города).
Я просто пытаюсь написать DQL-запрос, чтобы получить профиль пользователя с названием города и названием страны. кажется довольно простым?
Да, но я не нашел «чистого» решения в DQL, потому что у меня нет прямого псевдонима или связи между профилем sfguarduserprofile и классом страны.
Я мог бы создать прямую связь между моим профилем пользователя sfguard и классом моей страны, но я больше не буду уважать передовой опыт моделирования (MERISE).
Я мог бы использовать select из моего класса City и получить профиль пользователя и страну (City имеет отношения с этими двумя таблицами), но я не могу использовать это решение, потому что у меня есть другие соединения из моего sfguarduserprofile.
В SQL это очень просто, но я хотел бы использовать объекты доктрины.
Если у вас есть "чистое" решение, я буду очень рад узнать об этом!
Спасибо
Сандрино