我对这一切感到困惑。
我认为 Doctrine 不允许您在连接中使用主键(我在某处读过),但我在这里看到http://docs.doctrine-project.org/projects/doctrine-orm/en/latest/reference /limitations-and-known-issues.html它说“不可能使用指向非主键的连接列”,这似乎相反。
无论如何,我想加入主键,所以我肯定可以做到吗?我正在尝试建立一个简单的一对一关系。这就是我所拥有的,但我遇到了指向这个问题的各种错误。
我可以通过加入不是主键的字段来设置它,但在我想使用它的情况下,这对我来说似乎很垃圾。
我只是想要一个额外的数据库表来扩展主数据库表。根据任何限制,最好的方法是什么?
我正在使用 Doctrine 2.2,但可以使用任何版本。
下面的代码是我希望工作的,但它不允许这样做。
--
用户:
user_id # primary
field_1
field_2
额外用户信息:
extra_id # primary
extra_info_1
extra_info_2
用户.orm.yml:
User:
type: entity
table: null
fields:
user_id:
id: true
generator:
strategy: AUTO
field_1:
type: string
field_2:
type: string
oneToOne:
user_id:
targetEntity: UserExtra
mappedBy: extra_id
UserExtra.orm.yml:
UserExtra:
type: entity
table: null
fields:
extra_id:
id: true
generator:
strategy: AUTO
extra_info_1:
type: string
extra_info_2:
type: string
oneToOne:
extra_id:
targetEntity: User
mappedBy: user_id