У меня есть модель базы данных с двумя таблицами: пользователь и экспериментирование. Отношение n: n, поэтому я создал третью таблицу с двумя внешними ключами.Symfony: запрос соединения с использованием QueryBuilder
| Эксперимент | 1 ------- 0..n | ExperimentationUser | 0..n ------- 1 | Пользователь |
Сущность создается благодаря Доктрине (с аннотациями). Я получил UserEntity и ExperimentationEntity, но не ExperimentationUserEntity. Когда я смотрю в USEREntity, я могу найти коллекцию «связанных идентификаторов экспериментов».
Я хотел бы получить все имена экспериментов (не идентификаторы) для указанного пользователя. В общем SQL я присоединяюсь к Experimentation и ExperimentationUser с предложением WHERE (для выбора идентификатора пользователя). Но так как я начинаю проект Symfony (2.8), я бы хотел использовать QueryBuilder.
Я не знаком с синтаксисом, и я понятия не имею, как я могу это достичь. То, что я пробовал:
$repository = $this->getDoctrine()->getRepository('AppBundle:Experimentation');
$query = $repository->createQueryBuilder('e')
->join('...')
->setParameter('id',$id)
->getQuery();
Но я не знаю, что поставить в п join
. Я даже не уверен, что мне это нужно.
Благодарим за помощь!
Не могли бы вы показать свои сущности, аннотированные доктриной? спасибо – DonCallisto