0
這是我得到:我不能連接兩個表與學說2
$queryBuilder = $this->createQueryBuilder('a')->select()->where('a.id = ?0')->setParameters(array($id));
$queryBuilder->leftJoin('Doctrine\Entity\AccommodationUser', 'b');
$queryBuilder->leftJoin('Doctrine\Entity\AccommodationContact', 'c');
這不會工作,我得到:[語法錯誤] 0行,列97:錯誤:預期文字,有「加入」錯誤信息。但是,如果我嘗試做它們一個接一個
$queryBuilder = $this->createQueryBuilder('a')->select()->where('a.id = ?0')->setParameters(array($id));
$queryBuilder->leftJoin('Doctrine\Entity\AccommodationContact', 'c');
或
$queryBuilder = $this->createQueryBuilder('a')->select()->where('a.id = ?0')->setParameters(array($id));
$queryBuilder->leftJoin('Doctrine\Entity\AccommodationUser', 'b');
它的工作!
interestind爲什麼我需要一次「的原則\實體\ AccommodationUser」,然後「AccommodationUser」 –
如果它是一個實體內你不需要指定'from',因爲它是'($ alias) - > from($ entityName)''的快捷方式' - 如果直接在實體管理器上調用'createQueryBuilder',你需要指定選擇哪個實體從。 – mickadoo