Ruby on Rails:在html.erb文件

时间:2018-11-27 14:38:13

标签: ruby-on-rails arrays ruby loops erb

我是html.erb文件的新手,但没有找到解决问题的答案。 我有一组名称,我想将它们打印在段落标签<p>中,并以','一行,像这样:

name1, name2, name3

但是我得到了:

name1,
name2,

这是代码:

<% @names_array.each do |name| %>
  <p class="center"><%= name %>,</p>
<% end %>

2 个答案:

答案 0 :(得分:4)

您可以使用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"

检查documentation

答案 1 :(得分:3)

不是这样吗?只需加入它们,然后将它们放在段落标记中即可

<p class="center">
  <%= @names_array.join(', ') %>
</p>