Ruby on Rails: 在 html.erb 文件的单行中打印数组元素
Ruby on Rails: Print element of array in a single line in html.erb file
我是 html.erb 文件的新手,我没有找到问题的答案。
我有一组名称,我试图将它们打印在段落标记 <p>
中,一行中带有“,”,如下所示:
name1, name2, name3
但我得到的是:
name1,
name2,
这是代码:
<% @names_array.each do |name| %>
<p class="center"><%= name %>,</p>
<% end %>
这样的东西行不通吗?加入他们,将他们留在段落标签内:
<p class="center">
<%= @names_array.join(', ') %>
</p>
您可以使用 Active Support 的 to_sentence
方法。示例:
names = ['name1', 'name2', 'name3']
irb(main):001:0> names = ['name1', 'name2', 'name3']
=> ["name1", "name2", "name3"]
irb(main):002:0> names.to_sentence
=> "name1, name2 and name3"
您可以修改最后一个连接器传字选项:
irb(main):003:0> names.to_sentence(last_word_connector: ', ')
=> "name1, name2, name3"
我是 html.erb 文件的新手,我没有找到问题的答案。
我有一组名称,我试图将它们打印在段落标记 <p>
中,一行中带有“,”,如下所示:
name1, name2, name3
但我得到的是:
name1,
name2,
这是代码:
<% @names_array.each do |name| %>
<p class="center"><%= name %>,</p>
<% end %>
这样的东西行不通吗?加入他们,将他们留在段落标签内:
<p class="center">
<%= @names_array.join(', ') %>
</p>
您可以使用 Active Support 的 to_sentence
方法。示例:
names = ['name1', 'name2', 'name3']
irb(main):001:0> names = ['name1', 'name2', 'name3']
=> ["name1", "name2", "name3"]
irb(main):002:0> names.to_sentence
=> "name1, name2 and name3"
您可以修改最后一个连接器传字选项:
irb(main):003:0> names.to_sentence(last_word_connector: ', ')
=> "name1, name2, name3"