我刚刚将 Symfony 的项目版本从 2.1 升级到 2.2 RC2,并开始看到一些在 2.1 上没有出现的映射错误。我的整个映射似乎都抛出了错误。有一个例子:
这是我的两个实体。
1.
MyBundle\Entity\Usuario:
type: entity
table: usuario
id:
id:
type: integer
generator: { strategy: AUTO }
column: co_usuario
fields:
[...]
oneToMany:
historicos:
targetEntity: Historico
mappedBy: id
[...]
2.
MyBundle\Entity\Historico:
type: entity
table: historico
id:
id:
type: integer
generator: { strategy: AUTO }
column: co_historico
fields:
[...]
manyToOne:
coUsuario:
targetEntity: Usuario
inversedBy: historicos
joinColumn:
name: co_usuario
referencedColumnName: co_usuario
[...]
这些是我得到的错误:
关联 MyBundle\Entity\Usuario#historicos 指的是未定义为关联的拥有方字段 MyBundle\Entity\Historico#id。
MyBundle\Entity\Usuario#historicos 关联是指不存在的拥有方字段 MyBundle\Entity\Historico#id。
我以前的 composer.json(从 2.1 版开始,一切正常)有这些版本的学说:
[...]
"doctrine/orm": ">=2.2.3,<2.4-dev",
"doctrine/doctrine-bundle": "1.0.*",
[...]
Symfony 2.2 RC2 带有以下版本的 Doctrine:
[...]
"doctrine/orm": "~2.2,>=2.2.3",
"doctrine/doctrine-bundle": "1.2.*",
[...]
我不确定我做错了什么,它看起来很像我们在学说的映射文档中看到的所有内容。如果有人能指出我正确的方向,那就太好了。