Я пытаюсь отобразить вывод этой находки -рельсов - отображающие вложенный найти хэш
@test = User.joins(:plans => [:categories => [:project => :presentations]]).where(current_user.id)
Вот мой выход контур
<% @test.each do |p| %>
<%= p.plans %>
<% p.plans.each do |d| %>
<%= debug(d) %>
<% d.categories.each do |e| %>
<% e.project.each do |r| %>
<%= debug(r) %>
<% end %>
<% end %>
<% end %>
<% end %>
Цикла работает до тех пор, пока не получит проект, когда он бросает эта ошибка
undefined method `each' for "#<Project:0x000001033d91c8>":Project
Если я изменю его проекты в цикле он дает эту ошибку
undefined method `projects' for #<Plan:0x000001033da320>
отладки на категории уровне показывает это
--- !ruby/object:Category
attributes:
id: 2
name: test
short_name: tst
created_at:
updated_at:
category_id: 2
plan_id: 5
Мои отношения похожи на эту
пользователя has_many: user_plans План HAS_MANY: user_plans has_and_belongs_to_many: Категории Категория has_one: проект has_and_belongs_to_many: plans Проект has_many: презентации,: зависимый =>: delete_all Презентация belongs_to: проект
мне нужно изменил мою находку ли?
Спасибо, Алекс
Спасибо, что должно было быть has_many – Alex