Symfony оставил запрос на присоединение - PullRequest
0 голосов
/ 16 ноября 2010

У меня есть следующий запрос, который выполняется правильно:

$q = $this->createQuery('e')
     ->where('e.Persons_idUser =?', $request)
     ->leftJoin('e.JobTitles jt')
     ->leftJoin('e.EmploymentLevels el');

, но когда я перебираю результат и пытаюсь получить доступ к полям из левого соединения:

 foreach ($work as $w){
   echo $w->employername;
   echo $w->jobtitle; // this is from the left join
   echo $w->employmentlevel; // this is from the left join
 }

Я получил следующее сообщение об ошибке: Неизвестное свойство записи / связанный компонент "jobtitle" в "Experiences"

Кто-нибудь получил подсказку?Как отобразить поле из левого соединения?

Ответы [ 2 ]

1 голос
/ 29 ноября 2011
<?php
    foreach ($work as $w){
        echo $w->employername;
        foreach($w->JobTitles as $job){
            echo $job->jobtitle; // this is from the left join
        }
        foreach($w->EmploymentLevels as $employ){
            echo $employ->employmentlevel; // this is from the left join
        }
    }

?>

Это будет работать, поскольку symfony возвращает массив объектов, а элементы из объединяемой таблицы попадают в дочерний массив

0 голосов
/ 16 ноября 2010

Решение:

foreach ($work as $w){
 echo $w->employername;
 echo $w->JobTitles->jobtitle; // this is from the left join
 echo $w->EmploymentLevels->employmentlevel; // this is from the left join
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...