Ruby on rails Rails i18n项目列表和视图中的循环
如何在myRuby on rails Rails i18n项目列表和视图中的循环,ruby-on-rails,rails-i18n,Ruby On Rails,Rails I18n,如何在myyml中列出元素,并在视图中循环它们并访问它们的属性?我的当前代码只获取列表中的最后一项。我想在视图中循环浏览项目列表,并显示它们的标题和说明元素 e、 g yml: 视图: 预期结果: first item a random description second item another item description 改用这个: <% t('front_page.index.description_section.items').each
yml
中列出元素,并在视图中循环它们并访问它们的属性?我的当前代码只获取列表中的最后一项。我想在视图中循环浏览项目列表,并显示它们的标题
和说明
元素
e、 g
yml:
视图:
预期结果:
first item
a random description
second item
another item description
改用这个:
<% t('front_page.index.description_section.items').each do |item| %>
# ^ no equal sign here
<%= item[:title] %>
#^^^^ this is a hash
<%= item[:description] %>
<% end %>
使用以下语法在YAML中定义数组:
items:
- title: "first item"
description: "a random description"
- title: "second item"
description: "another item description"
要检查这一点,您可以在IRB控制台中执行以下操作:
h = {:items=>[{:title=>"first item", :description=>"desc1"}, {:title=>"second item", :description=>"desc2"}]}
puts h.to_yaml
# => returns
---
:items:
- :title: first item
:description: desc1
- :title: second item
:description: desc2
对成功了。跑得很好。我必须添加一个
。每个,它才能正确循环。
<% t('front_page.index.description_section.items').each do |item| %>
# ^ no equal sign here
<%= item[:title] %>
#^^^^ this is a hash
<%= item[:description] %>
<% end %>
t('front_page.index.description_section.items.item.title')
# => returns "second item" because the key `item` has been overwritten
items:
- title: "first item"
description: "a random description"
- title: "second item"
description: "another item description"
h = {:items=>[{:title=>"first item", :description=>"desc1"}, {:title=>"second item", :description=>"desc2"}]}
puts h.to_yaml
# => returns
---
:items:
- :title: first item
:description: desc1
- :title: second item
:description: desc2