2016-10-19 4 views
0

私は誰かが私に正しい方法を導くことを望む簡単な質問があります。最後の区切り記号をhtmlから削除するには

enter image description here

私はちょうど台湾の後、最後の区切りを削除する方法を知りたいです。

ここに私のhtmlのルビーコードです。

<div class="well"> 
    <h4>Tags</h4> 
    <% @food.categories.each do |category| %> 
    <%= category.name %> 
    <% if @food.categories.count > 1 %> 
     | 
    <% end %> 
    <% end %> 
</div> 

ありがとうございました!

答えて

3

ような何かを試すことができます。

<% @food.categories.each_with_index do |category, idx| %> 
    <% if idx > 0 %> 
    | 
    <% end %> 
    <%= category.name %> 
<% end %> 

あるいは単純

<%= @food.categories.map(&:name).join(' | ') %> 
+0

あなたも簡単な方法を説明できますか?私はそれを働かせることはできません。それはループの中に入りますか? ありがとうございます。 –

+1

@BrianLau:いいえ、ループの_instead_になります。例えば、コンソールでそれを試してみてください。あなたはそれが何かを見るでしょう。 –

+0

@BrianLau:ああ、小さな間違いに気づいた。今すぐ仕事が必要です –

1

あなたが最初のものを除いて、カテゴリの前にセパレータを発することができる別の方法として

<% if @food.categories.count > 1 && @food.categories.last != category %> 
    | 
<% end %> 
1
<% @food.categories.each_with_index do |category, index| %> 
    <% unless index.zero? %> 
    | 
    <% end %>  
    <%= category.name %> 
<% end %> 
関連する問題