Как удалить последний разделитель из html

#html #ruby-on-rails

#HTML #ruby-on-rails

Вопрос:

У меня простой вопрос, надеюсь, кто-нибудь сможет направить меня правильным путем.

введите описание изображения здесь

Я просто хочу знать, как удалить последний разделитель после тайваньского.

Вот мой html-код ruby.

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

Пожалуйста, и спасибо вам!

Ответ №1:

В качестве альтернативы вы можете использовать разделители перед категорией, кроме первого.

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

Или еще проще

 <%= @food.categories.map(amp;:name).join(' | ') %>
  

Комментарии:

1. Можете ли вы объяснить еще более простой метод? Я не могу заставить его работать. Это входит в цикл? Большое спасибо.

2. @BrianLau: нет, это идет вместо цикла. Попробуйте это, например, в консоли. Вы увидите, что это делает.

3. @BrianLau: ах, заметил небольшую ошибку. Теперь должно сработать

Ответ №2:

Вы можете попробовать что-то вроде

 <% if @food.categories.count > 1 amp;amp; @food.categories.last != category %>
  |
<% end %>
  

Ответ №3:

 <% @food.categories.each_with_index do |category, index| %>
  <% unless index.zero? %>
    |
  <% end %>    
  <%= category.name %>
<% end %>