我想用逗号分隔这个块:
- game_publication.groups.each_with_index do |group, index|
= link_to store_group_path(current_store, group) do
%span= @groups.find(group).name.to_s + (index > 0 ? ', ' : '')
但目前它会返回类似
的内容<label>Groups :</label>
<a href="/66-store/groups/4594?locale=en">
<span>party hard</span>
</a>
<a href="/66-store/groups/5063?locale=en">
<span>b0m,</span>
</a>
<a href="/66-store/groups/5066?locale=en">
<span>test,</span>
</a>
</label>
我似乎不能使用任何铁路助手。
我想要 group1,group2,group3 。
<label>Groups :</label>
<a href="/66-store/groups/4594?locale=en">
<span>party hard,</span>
</a>
<a href="/66-store/groups/5063?locale=en">
<span>b0m,</span>
</a>
<a href="/66-store/groups/5066?locale=en">
<span>test</span>
</a>
</label>
答案 0 :(得分:2)
首先,您确定在此处粘贴了完全代码,该代码提供了发布的结果吗?在您的代码中,您有
(index > 0 ? '' : ',')
表示:除非我们在第一个元素,否则不要添加逗号。你发布的结果是另外一个逗号:它在任何地方都有一个逗号,除了第一个元素。换句话说:您发布的代码无法生成您发布的输出。
现在针对您的问题:您希望在除最后一个元素之外的每个元素上添加逗号。这意味着您需要知道最高(最后)索引值:
last_index = game_publication.groups.size - 1
有了这个,您可以将表达式编写为
(index == last_index ? '' : ',')