0

1つのテーブルで3つの外部キーを取得したいという状況が1つあります。そして、そのテーブルを3つのモデルに関連付けます。それはCakePHPに従うのに良い習慣ですか?

たとえば、ユーザー、ロール、複数のモジュールがあります:

これで、userにはroles_usersを持つ1つのロールがあります。ユーザーには、モジュール内に多くのロールを持つ多くのモジュールがあるので、ユーザー、モジュール、およびロールに関連付けられる別のテーブルmodules_users_rolesを作成します。

1つのテーブルに3つの外部キーを追加するのは正しい方法ですか?または私はそれをブレーキする必要がありますか、

module_users with id、user_id、module_id module_user_roles with id module_user_is、role_id

ただし、これにより、DBからの関連付けとデータのフェッチが複雑になります

4

1 に答える 1

1

ちょっとした文脈がもっと役に立ちました。

ユーザーに「ロール」外部キーを設定できます。

しかし、状況が本当に複数の外部キーを必要とする場合、できることはあまりありません。

検索を行っている間は、「再帰的」レベルをチェックしてください。

于 2012-11-01T14:28:48.360 に答える