我發現這個迴應:https://stackoverflow.com/a/9135093/620095,但我不想使用一個新的類。我正在尋找最好的方式(優雅和直接)。如何在單向多對多關係中創建額外的域?
這裏是 '標籤' 實體:
MyApp\CoreBundle\Entity\Tag:
type: entity
table: tag
id:
id:
type: integer
generator: { strategy: AUTO }
fields:
name:
type: string
length: 255
nullable: false
'後' 實體:
MyApp\PostBundle\Entity\Post:
type: entity
table: post
id:
id:
type: integer
generator: { strategy: AUTO }
fields:
title:
type: string
length: 255
nullable: false
content:
type: text
nullable: false
manyToMany:
Tags:
targetEntity: MyApp\CoreBundle\Entity\Tag
joinTable:
name: post_tag
joinColumns:
post_id:
referencedColumnName: id
inverseJoinColumns:
tag_id:
referencedColumnName: id
的 '事件' 實體:
MyApp\EventBundle\Entity\Event:
type: entity
table: event
id:
id:
type: integer
generator: { strategy: AUTO }
fields:
title:
type: string
length: 255
nullable: false
content:
type: text
nullable: false
manyToMany:
Tags:
targetEntity: MyApp\CoreBundle\Entity\Tag
joinTable:
name: event_tag
joinColumns:
event_id:
referencedColumnName: id
inverseJoinColumns:
tag_id:
referencedColumnName: id
假設我要一個' 'event_tag'表中的'description'字段。我該怎麼辦?
更新:如果是不可能的,如何保持我的三個yml添加引用字段?
我更新了問題。你可以幫我嗎? – cbacelar
我懷疑沒有。這只是Doctrine 2的工作方式。我想你可以切換到不同的ORM,但我沒有任何支持你想要的。用兩個ManyToOne替換ManytoMany並不是什麼大不了的事情。 – Cerad