0
私のRailsアプリケーションでは、ユーザ、ロール、権限があります。Railsで深くネストされたオブジェクトにアクセス
class User < ActiveRecord::Base
has_and_belongs_to_many :roles, :join_table => 'users_roles'
end
class Role < ActiveRecord::Base
has_and_belongs_to_many :users, :join_table => 'users_roles'
has_and_belongs_to_many :permissions, :join_table => 'roles_permissions'
end
class Permission < ActiveRecord::Base
has_and_belongs_to_many :roles, :join_table => 'roles_permissions'
end
権限をリスト私がその許可のためのロールとユーザーの数を取得したい:次のように
関連付けがされています。
私にできること:
<% @permissions.each do |permission| %>
<%= permission.roles.count %>
<% end %>
しかし、私がしなければ:
<% @permissions.each do |permission| %>
<%= permission.roles.users.count %>
<% end %>
私はusers
が定義されていないというエラーが出ます!
:
@permissions = Permission.includes(roles: :users)
だからだけでなく、ユーザーによって引っ張っする必要があります...
を呼び出しますユーザモデルとの関連付けをそのオーダーで追加する –