因此,我试图在查询中进行联接,但原则通常是这样做的,并且会抛出与断腿同样有用的错误。
任何人都可以提供有关我在哪里出问题的建议。我收到的错误消息;调试:[语法错误]行0,列-1:错误:预期的Doctrine \ ORM \ Query \ Lexer :: T_IDENTIFIER,得到了字符串的结尾。在第64行的“ ./vendor/symfony/doctrine-bridge/Messenger/DoctrineTransactionMiddleware.php”文件中]
评估实体
/** * @var Candidate * @ORM\ManyToOne( * targetEntity="App\Domain\Candidate\Candidate", * inversedBy="assessments") * @ORM\JoinColumn(nullable=false) */ private $candidate;
候选实体
/** * @var Assessment[]|Collection * @ORM\OneToMany( * targetEntity="App\Domain\Assessment\Assessment", * mappedBy="candidate", * cascade={"persist"}) * @ORM\JoinColumn(nullable=false) */ private $assessments;
理论查询
$qb = $this->entityManager->createQueryBuilder();
$qb->select('ca')
->from(Candidate::class, 'ca')
->innerJoin('ca.assessments', 'as');
因此,我试图在查询中进行联接,但是主义通常在这样做,并抛出与断腿同样有用的错误。任何人都可以建议我这里要去哪里。错误...
您在联接中使用的别名是保留关键字(as
)。