-1

私は次の問題に遭遇し、ウェブで何時間も検索した後、解決策が見つかりません。Entity Project、User、Roleの間に「3-Entity Relationship」を持たせたい。プロジェクトには多くのユーザーがいて、ユーザーは多くのプロジェクトのメンバーになることができます。しかし、プロジェクト <--> ユーザー間のすべての関係において、ユーザーは異なる役割を持つことができます。Doctrine2でこれを解決するにはどうすればよいですか? よろしくお願いします!

EDIT 小さなコード例はとてもいいでしょう:)

4

1 に答える 1

0

プロジェクトとユーザーの間に N:M の関連付けが必要です。次に、このアソシエーションのすべてのインスタンスがロール プロパティを持ちます (固定リストの整数として、またはロール エンティティへのアソシエーションとして)。残念ながら、Doctrine はアソシエーションのプロパティを明示的にサポートしていません。そのため、これらのケースではコネクタ エンティティを使用する必要があります。これは、プロジェクトとユーザーの両方への ManyToOne 接続にあるエンティティです。このエンティティはロール値/関連付けを保持できますが、これらのオブジェクトを介して接続を管理 (切断) する必要があります。

于 2012-11-25T19:27:26.377 に答える