2014-10-17 19 views
0

我目前正在使用Symfony 2在事件管理應用程序中使用的Doctrine ORM中設置關聯映射。我覺得抓住這個概念有點困惑,所以如果能告訴我在以下情況下需要兩個映射,我將不勝感激:主義協議映射 - 一個現實生活場景

應用程序中有用戶(用戶實體)和事件(事件實體) 。

1.(第一映射)

一個用戶可以有許多的事件的參加者/事件持有多的用戶與會者。

2.(第二映射)

每個事件只有一個用戶所有者(即設置事件的用戶),但每個用戶可以是許多事件的所有者

我的假設是以下內容:

Ad.1

這裏一個多對多雙向 ASSOCIATI上是必需的,因爲用戶持有實體$events,而事件實體持有$attendees(都被映射到彼此)

Ad.2

這裏自從事件實體需要多對一單向關聯持有$owner,而用戶實體不必映射到事件。

我會非常感謝您的反饋。我相信這會幫助我更好地理解這個概念。

謝謝!

回答

1

你的假設是正確的,在使用ManyToMany on Doctrine時要小心。 Doctrine會自動處理它,但請注意,如果您在多對多關聯中有任何額外的列(除了參與者ID和事件ID),您需要將ManyToMany作爲另一個實體處理。

+0

感謝您指出另一個實體將需要處理額外的表。 – luqo33 2014-10-20 19:50:51