Ich versuche, die Ausgabe dieser Fund anzuzeigen -Schienen - Anzeigen von verschachtelten find hash
@test = User.joins(:plans => [:categories => [:project => :presentations]]).where(current_user.id)
Hier ist meine Ausgangsschleife
<% @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 %>
Die Schleife arbeitet, bis es zu projizieren bekommt, wenn er wirft dieser Fehler
undefined method `each' for "#<Project:0x000001033d91c8>":Project
Wenn ich es Projekte in der Schleife zu ändern gibt es diesen Fehler
undefined method `projects' for #<Plan:0x000001033da320>
Die Debug in Kategorien Ebene zeigt diese
--- !ruby/object:Category
attributes:
id: 2
name: test
short_name: tst
created_at:
updated_at:
category_id: 2
plan_id: 5
Meine Beziehungen aussehen wie dieses
Benutzer has_many: user_plans -Plan has_many: user_plans has_and_belongs_to_many: Kategorien Kategorie has_one: Projekt has_and_belongs_to_many: Pläne Projekt has_many: Präsentationen,: abhängig =>: DELETE_ALL Präsentation belongs_to: Projekt
Muß ich meinen Fund geändert?
Danke, Alex
Danke, das hätte has_many sein sollen – Alex