Rails как убрать последнюю запятую в массиве? - PullRequest
0 голосов
/ 26 февраля 2012

В моем представлении JSON у меня есть:

[
<% @sog.each do |kon| %>
{"id":"<%= kon.id %>","titel":"<%= kon.titel.force_encoding("UTF-8") %>","url":"<%= kon.photo.image.url %>"},
<% end %>
]

Как удалить последнюю запятую в цикле?JSON не работает, потому что в конце есть запятая.

Ответы [ 2 ]

3 голосов
/ 26 февраля 2012

Несколько вариантов, но один из них - each_with_index и добавьте запятую, если это не последняя итерация.

Вы можете collect строки JSON и join их с помощью ",", устраняя необходимостьпроверить.

Или создать метод, который сериализует объект в JSON, избегая всей занятой работы в слое представления.

0 голосов
/ 27 февраля 2012

Другим значимым и простым способом сделать это будет

@json_obj = []

@sog.each do |kon|
   @json_obj << {"id":"kon.id",
                 "titel":"kon.titel.force_encoding('UTF-8')",
                 "url":"kon.photo.image.url"
                }

Вам больше не нужно беспокоиться о запятой.Надеюсь это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...