所以我有这两个捆绑包:
UserBundle
BlogBundle
以及这3个实体:
UserBundle:User
BlogBundle:User
BlogBundle:Article
CCD_ 6使用双向一对一关系来扩展CCD_。联接列名为user_id
,它是一个关联键:
BlogBundleEntityUser:
type: entity
table: blog_users
id:
user:
associationKey: true
oneToOne:
user:
targetEntity: UserBundleEntityUser
inversedBy: blog_user
joinColumn:
name: user_id
referencedColumnName: id
现在我想在BlogBundle:User
和BlogBundle:Article
之间创建一个双向的一对多关系。
目前我正在尝试:
BlogBundle:User
oneToMany:
articles:
targetEntity: Article
mappedBy: author
BlogBundle:Article
manyToOne:
author:
targetEntity: User
inversedBy: Article
joinColumn:
name: author
referencedColumnName: user_id
我的问题是,它有效,我可以通过Article
对象访问UserBundle:User
中的数据,但在探查器中,它显示这些数据没有正确映射。我的猜测是,做我正在努力的事情是可能的,但我只是做错了什么。
我错过了什么?
我认为问题出在invertedBy上,在这里你必须写字段的名称,而不是实体的名称。
以下是文档:http://doctrine-orm.readthedocs.org/projects/doctrine-orm/en/latest/reference/association-mapping.html#one-到许多双向
您的代码将是:
BlogBundle:User
oneToMany:
articles:
targetEntity: Article
mappedBy: author
BlogBundle:Article
manyToOne:
author:
targetEntity: User
inversedBy: articles
joinColumn:
name: author
referencedColumnName: user_id