我在symfony2上运行了一个网站。
我有这个dql查询:
SELECT b, d, al, a
FROM Bundle:Book b
LEFT JOIN b.document d
LEFT JOIN b.authorLinks al
LEFT JOIN al.author a
WHERE d.type = 'summary'
ORDER BY b.name ASC
在本地我没有任何问题,但在制作中我有这个问题:
... LEFT JOIN LEFT JOIN ...
所以第一个LEFT JOIN(b.document d)不能在生产中工作,但在本地工作......(其他LEFT JOIN(authorLinks& author)同时工作)
我的Book
实体有:
/**
* @var \Doctrine\Common\Collections\ArrayCollection
*
* @ORM\OneToMany(targetEntity="Document", mappedBy="book")
* @ORM\OrderBy({"name" = "ASC"})
*/
protected $document;
我的Document
实体有:
/**
* @var Book
*
* @ORM\ManyToOne(targetEntity="Book", inversedBy="document")
* @ORM\JoinColumn(name="book_id", referencedColumnName="id", nullable=true)
* @Assert\NotBlank
*/
protected $book;
有什么想法吗?感谢
答案 0 :(得分:0)
解决了!
我添加了#34; d.book_id = b.id"在" LEFT JOIN b.document d"
之后并添加了
/**
* @var book_id
* @ORM\Column(name="book_id", type="integer")
* @Assert\NotBlank
*/
protected $book_id;
在文档实体
中 感谢所有人!