0

我一直在尝试通过关联模型对索引中的模型进行分组。

这是我所拥有的:

我有模型 location.rb

  belongs_to :continent   

属于大陆.rb

  has_many :locations

位置控制器.rb

  def index
    @locations = Location.find(:all)
  end

在我的索引页面上

<% @locations.group_by(&:continent_id).each do |continent, locations| %>

    <li><%= continent %></li> 
  <% locations.each do |location| %>    
    <%= location.name %> 
  <% end %>
<% end %>

我想按大陆对位置进行分组。上面的代码有效,但我只需要显示大陆的名称,现在它只显示 id nr。

最好的方法是什么?我是新手,我知道这一定很容易,但我有点卡住了。

谢谢。

4

1 回答 1

0

首先,在我看来,您列出的是大陆,而不是位置(以保持其平静)。所以我会为大陆控制器改变它。在大洲控制器中:

def index
  @continents = Continent.find(:all)
end

在大洲/index.html.erb 中:

<% @continents.each do |continent| %>
  <li><%= continent.name %></li> 
  <% continent.locations.each do |location| %>    
    <%= location.name %> 
  <% end %>
<% end %>
于 2012-07-17T17:35:57.330 回答