具有多个联接的Rails 3.2 ActiveRecord查询

具有多个联接的Rails 3.2 ActiveRecord查询,activerecord,join,ruby-on-rails-3.1,Activerecord,Join,Ruby On Rails 3.1,我在尝试正确连接表数据并将其呈现到视图中时遇到问题。我目前正在设计一个系统,以便我的餐厅客户可以创建动态菜单,并在菜单页面上正确显示它们。目前我有一个菜单、菜单项和部分模型。我已经成功地创建了表单,可以将菜单项分配给菜单,并将菜单项与节关联。我的问题是呈现前端菜单。我希望我的菜单看起来像下面的模板。任何帮助都将不胜感激 Menu Name First Section Menu Item Menu Item ... 2nd Section Menu Item

我在尝试正确连接表数据并将其呈现到视图中时遇到问题。我目前正在设计一个系统,以便我的餐厅客户可以创建动态菜单,并在菜单页面上正确显示它们。目前我有一个菜单、菜单项和部分模型。我已经成功地创建了表单,可以将菜单项分配给菜单,并将菜单项与节关联。我的问题是呈现前端菜单。我希望我的菜单看起来像下面的模板。任何帮助都将不胜感激

Menu Name
  First Section
    Menu Item
    Menu Item
    ...
  2nd Section
    Menu Item
    Menu Item
  ...
我的模型和关联如下所示

在Menu.rb中

class Menu < ActiveRecord::Base
  has_many :menu_menu_items, :dependent => :delete_all
  has_many :menu_items, :through => :menu_menu_items
class MenuItem < ActiveRecord::Base
  has_many :menu_menu_items
  has_many :menus, :through => :menu_menu_items
  belongs_to :sections
class Section < ActiveRecord::Base
  has_many :menu_items,  :dependent => :nullify
<div class="content">

  <% @menus.each do |menu| %>
    <h3><%= menu.name %> <br/></h3>
    <% Section.all.each do |section| %>
      <b><%= section.name %><br/></b>
      <% menu.menu_items.each do |menu_items| %>
        &nbsp;&nbsp;&nbsp;<%= menu_items.name %> <br/>
      <% end %>
    <% end %>
  <% end %>

</div>
<% @menus.each do |menu| %>
  <h3><%= menu.name %> <br/></h3>
  <% Section.all.each do |section| %>
    <b><%= section.name %><br/></b>
    <% menu.menu_items.where(:section_id => section.id).each do |menu_items| %>
      &nbsp;&nbsp;&nbsp;<%= menu_items.name %> <br/>
    <% end %>
  <% end %>
<% end %>
select count(sections.id),sections.name
from menu_items 
  join menu_menu_items on menu_items.id=menu_menu_items.menu_item_id
  join menus on menus.id=menu_menu_items.menu_id 
  join sections on menu_items.section_id= sections.id 
where menu_id=16  #for example.
group by sections.id;