Я пытался просмотреть стекопоток, чтобы исправить мою ситуацию, но, к сожалению, я просто запутался.
У меня есть два отношения has_many к has_many: пользователи has_and_belongs_to_many Роли и роли has_and_belongs_to_many. Я уже настроил правильные таблицы и все (т.е. таблицы role_users и pod_roles): я знаю, что это по крайней мере частично работает, потому что я могу сделать @ user.roles и получить все роли этого пользователя.
Однако я хочу сделать еще один шаг вперед: я хочу сделать что-то похожее на @ user.roles.pods, чтобы получить все модули, относящиеся к этому пользователю. После того, как @ user.roles.pods не работал: вот что я пытался сделать:
@current_user_roles = current_user.roles
@pods = Array.new
@current_user_roles.each do |role|
@pods.push(role.pods)
end
@pods.each do |pod|
puts(pod.name+"-----------------")
end
Не сработало. Это просто попытка получить что-то очень простое - попытка заставить имена всех модулей отображаться, и я могу сказать, работает ли это.