Ruby使用ERB从对象迭代

时间:2017-12-13 13:07:33

标签: ruby erb

我是新人,负责做前端工作,但我想我可以轻松找出ERB。

在我的app.rb中 变量定义

def find_listings
   3.times.map { random_item }
end

def random_item
  {
    name: 'blah',
    location: 'LA'
   }
end

get '/' do
   @listings = find_listings
   erb :index
end

在我的ERB文件中,我正在尝试迭代

index.erb

<% @listings.each do |value | %>    
        <strong><%= value %><br/>
        <%# This returns {:name=>"blah", :location=>"New York"} %>
        <strong><%= value['name']%></strong><br/>
        <%# This returns nothing %>  
<% end %>

我如何获得名称值?

1 个答案:

答案 0 :(得分:0)

您的哈希将符号作为键(而非字符串),因此您可以通过以下方式访问名称:value[:name]