Ruby on Rails: вывести элемент массива в одну строку в файле html.erb - PullRequest
0 голосов
/ 27 ноября 2018

Я новичок в файлах html.erb и не нашел ответа на свою проблему.У меня есть массив имен, и я пытаюсь напечатать их в теге параграфа <p> в одну строку с ',' вот так:

name1, name2, name3

Но вместо этого я получаю это:

name1,
name2,

Это код:

<% @names_array.each do |name| %>
  <p class="center"><%= name %>,</p>
<% end %>

Ответы [ 2 ]

0 голосов
/ 27 ноября 2018

Вы можете использовать метод to_sentence Active Support.Пример:

names = ['name1', 'name2', 'name3']

irb(main):001:0> names = ['name1', 'name2', 'name3']
=> ["name1", "name2", "name3"]

irb(main):002:0> names.to_sentence
=> "name1, name2 and name3"

Вы можете изменить последний соединитель, передав слово опции:

irb(main):003:0> names.to_sentence(last_word_connector: ', ')
=> "name1, name2, name3"

Проверьте документацию

0 голосов
/ 27 ноября 2018

Разве что-то не работает? Просто присоединитесь к ним, оставив их внутри тега абзаца:

<p class="center">
  <%= @names_array.join(', ') %>
</p>
...