我有两个实体:
/**
* @ORM\Entity
* @ORM\Table(name="album")
*/
class Album
{
...
/**
* @ORM\OneToMany(targetEntity="Image", mappedBy="album")
*/
private $images;
...
和
/**
* @ORM\Entity
* @ORM\Table(name="image")
*/
class Image
{
...
/**
* @ORM\ManyToOne(targetEntity="Album", inversedBy="images")
* @ORM\JoinColumn(name="album_id", referencedColumnName="id")
*/
private $album;
...
所以当我在AlbumRepository中尝试下一个
时$qb = $this->createQueryBuilder('a')->leftJoin('a.images', 'i');
var_dump($qb->getQuery()->getSQL());
它引发了我的错误:
Class Entity\\Album has no association named images at ...
但是,如果我将images
更改为任何其他名称,例如{3}}或aaa
这3个地方(并运行控制台原则:生成:捆绑包的实体)一切正常。
所以我的问题是对相关实体的字段名称有任何限制吗?
Symfony 2.8,doctrine 2.4.8