私は3つのテーブルusers
,roles
およびroles_users
を持っています。 roles_users
の表は、今私のモデルはModel_User
、Model_Role
、Model_User_Role
ありuser_id
とrole_id
Kohanaで1対多の関係
を持っています。
すべてのユーザーが1つの役割に関連付けられ、1つの役割に多数のユーザーが含まれるように、3つのモデルをリンクするにはどうすればよいですか。
私はORMを使用しており、その役割の名前を持つユーザーのリストを表示したいと考えています。
注:表1は、Auth
モジュールのKohanaから取得しました。
Model_User_Roleテーブルを除外しない理由を明示した場合、そのような関係を作成したい場合は、 フィールド「role_id」をユーザdbテーブルに追加し、 を保護$ _belongs_to = arry( \t 'role' \t => array( 'model' => 'role'、 'foreign_key' => 'role_id')に設定することができます。 、 )は、Model_Usersで ' と '保護$ _has_many = ARRY( \t 'ユーザ' \t =>配列( 'モデル' => 'ユーザ'、 'FOREIGN_KEY' => 'ROLE_ID')、 ); ' in Model_Role – Leonid
私はKohanaのauthモジュールに従っています。そのテーブルは – jimy
です。/modules/auth/classes/model/auth/user.phpと/ modules/auth/classesに基づいて独自の認証モデルを作ることができます/model/auth/role.phpを開き、必要な関係を設定します – Leonid