ユーザー、ロール、およびユーザーロールの 3 つのテーブルがあるとします。request: で user_roles を取得できますusers/1/user_roles
が、次のようなユーザーのロールを取得したい場合はどうすればよいでしょうかusers/1/roles
。
私の関係は次のとおりです。
has_many :roles, :through => :user_roles
出来ますか?
ユーザー、ロール、およびユーザーロールの 3 つのテーブルがあるとします。request: で user_roles を取得できますusers/1/user_roles
が、次のようなユーザーのロールを取得したい場合はどうすればよいでしょうかusers/1/roles
。
私の関係は次のとおりです。
has_many :roles, :through => :user_roles
出来ますか?
モデル内のリレーションは、アクセス先の URL とは直接関係ありません。新しいアクションまたは新しいコントローラーを追加して新しいビューを作成するなどroutes
ではなく、既存の動作を複製する必要があります。user_routes
現時点では、おそらく次のいずれかを持っています。
user_routes
で呼び出されるアクションUsersController
index
で呼び出されるアクションUserRoutesController
したがって、次のいずれかです。
routes
。UsersController
RoutesController
index アクションで呼び出されるコントローラーを追加します。使用しているメソッドに関係なく、アクションでインスタンス変数をuser.roles
ではなく に設定しますuser.user_roles
。
その後、必要なビュー コードを記述できます。