0
我有一个运行在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(作者链接&作者)都可以)
我的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;
任何想法?谢谢
您是否清除了生产缓存?什么是你的缓存引擎?基本上实体关系可能会被缓存,所以你需要清除它。取决于你的缓存引擎的东西像重新启动Apache会帮助 –
是的,我没有缓存:清除--env = prod – user2799086
据我所知,我不需要关于子句,因为关系已配置 – user2799086