如何分离数组,以便列出除逗号之外的逗号分隔的所有元素?

时间:2013-10-01 18:48:11

标签: ruby-on-rails

我在轨道上4.我有一个像这样的每个块

blends.addons.each do |a|
....
end

假设我有一个名为“test”的混合,有三个附加组件

我想在我的混合show.html.erb中创建一个如下所示的句子

  

与香草,巧克力和肉桂的测试混合物

我形成这句话的代码就像是

A <%= blend.name %> blend with <%= blend.addons.each do |a| %><%= a.name+", " %><% end %>

该代码将打印出以逗号分隔的混合所附加的所有插件的名称。如何让我的每个块添加逗号直到最后一个元素,然后打印“和#{最后一个元素}”?或者每个街区不是最好的方式吗?感谢。

1 个答案:

答案 0 :(得分:9)

这是由ActiveSupport方法提供的:

%w(Earth Wind Fire).to_sentence # => "Earth, Wind, and Fire"

您可以对其进行配置,see doc

在你的情况下,我会说:

%w(Earth Wind Fire).to_sentence(last_word_connector: ' and ')
# => "Earth, Wind and Fire"
相关问题