对不起,我不知道如何标题这个问题。Rails - 加入每个
这里是我的代码在视图:
<% country.cities.each_with_index do |city, i| %>
<% city.shops.each do |shop| %>
<%=h shop.name.join(", ") %>
<% end %>
<% end %>
因此,在这个城市里,让我们说有三个店:沃尔玛,Ace五金,哈曼卡顿。
上面代码的结果将产生:
Walmart Ace Hardware Harman Kardon
如何加入与他们每个人的“”?我试过<%= shop.name.join(", ") %>
,但不允许。错误。
谢谢。我喜欢Stack Overflow社区。你们已经更多了,远胜于真棒!
编辑
我只是发现了一些。沃尔玛在A市; Ace HArdware和Harman Kardon在B市。这就是为什么它按城市来加入城市。
当然,如果您使用的是Ruby 1.9,则可以使用'Symbol#to_proc'语法,如下所示:'city.spots.map(&:name).join(',')'。另外在Rails 3中,你不需要使用'h'来转义HTML,因为这在默认情况下在Erubis – 2010-10-29 16:41:12
中完成。实际上,Symbol#to_proc是ruby 1.8.6/7中rails <3的主动支持的一部分,所以它是可用的。主要的问题是我不想用句法欺骗来混淆答案;但为了完整性,我会添加示例。 – TreyE 2010-10-29 16:43:41
啊我不知道ActiveSupport支持这个。有趣的,不,我同意我也不会用它作为正式答案。 – 2010-10-29 16:46:44