0

私はdoctrine2でSymfony2を使用しており、ymlファイルとのテーブル関係を設計する必要があります。テーブルは、ユーザー、アカウント、およびロールであり、ユーザーは多くのアカウントのメンバーになり、異なるロールを持つことができます。

教義がなければ、テーブルと、user_id、account_id、および role_id を持つ 1 つの結合テーブルを作成します。

ドクトリンを使用すると、これが得られ、テーブルロールにもう1つの関係を追加する方法のヒントを探しています。

User:
    type: entity
    manyToMany:
        accounts:
          targetEntity: Accounts
          joinTable:
            name: UserAccount
            joinColumns:
              user_id:
                referencedColumnName: id
            inverseJoinColumns:
              account_id:
                referencedColumnName: id
4

1 に答える 1

0

そのような場合、あなたができる唯一の方法は、と呼ばれる別のエンティティを作成UserAccountRoleして、それに接続することOneToManyです.

User -> (OneToMany) -> UserAccountRole -> (ManyToOne) -> User
Account -> (OneToMany) -> UserAccountRole -> (ManyToOne) -> Account
Role -> (OneToMany) -> UserAccountRole -> (ManyToOne) -> Role
于 2013-04-26T14:03:34.960 に答える