我正在遍历ActiveAdmin中的3个has_many关系以显示信息。我想以父,子格式显示信息。目前我有一个活动,活动内有很多地方,每个地点都有很多日期,每个日期都有很多大使(用户)。
我希望显示信息,以便查看事件的位置,然后是按位置分隔的日期,然后是按日期分隔的大使(用户)。 这是我目前编写的代码,但它没有给我正在寻找的父子显示。
show do
attributes_table do
row :agency
row :name
row :event_details
row :created_at
panel "Locations" do
attributes_table_for event.event_locations do
row :label
row :address
row :zip
row :state
row :country
row :notes
panel "Event dates" do
event.event_locations.each do |r|
attributes_table_for r.event_dates do
row :event_date
panel "Ambassadors" do
attributes_table_for event.booking.booking_staff do
row :ambassador
end
end
end
end
end
end
end
end
active_admin_comments end
正如您在上面的代码中看到的那样,我无法获得理想的结果。任何建议将不胜感激。谢谢。
答案 0 :(得分:0)
也许这会指出你正确的方向。确保你改变了
:attribute_of_event_date
和类似的符号,因此它们在您的数据(模型)的上下文中是有意义的。祝你好运!
panel "Locations" do
resource.event_locations.each do |event_location|
attributes_table_for event_location do
row :label
row :address
row :zip
row :state
row :country
row :notes
panel "Event dates" do
event_location.event_dates.each do |event_date|
attributes_table_for event_date do
row :attribute_of_event_date
row :another_attribute_of_event_date
panel "Ambassadors" do
event_date.ambassadors.each do |ambassador|
attributes_table_for ambassador do
row :atttribute_of_ambassador
row :another_atttribute_of_ambassador
end
end
end
end
end
end
end
end
end