Как я могу добавить "" к каждому элементу в этой коллекции в RoR? - PullRequest
0 голосов
/ 18 июля 2010

На данный момент у меня есть этот прогон кода:

<%=h current_user.notes.collect { |t| t.name }.join(', ') %>

, который выводит это:

note 1, note 2, note 3

Как я могу изменить это так, чтобы вывод был похож на это?

"note 1", "note 2", "note 3"

Спасибо за чтение.

Редактировать: Вот полный код предложения Кандада Боггу ниже

$(window).ready(function() {
    $("input#note_name").autocomplete({
        source: [<%=h escape_javascript(current_user.notes.collect { |t| '"%s"' % t.name }.join(', ')) %>]
    });
});

А вот и вывод HTML:

$(window).ready(function() {
    $("input#note_name").autocomplete({
        source: [\&quot;note 1\&quot;, \&quot;note 2\&quot;]
    });
});

1 Ответ

2 голосов
/ 18 июля 2010

Попробуйте это:

current_user.notes.collect { |t| '"%s"' % t.name }.join(', ')

Вы можете экранировать строку для JavaScript:

escape_javascript(current_user.notes.collect { |t| '"%s"' % t.name }.join(', '))

Примечание Если вы протестируете код в консоли irb, он выведет следующий вывод:

"\"note 1\", \"note 2\", \"note 3\""

Это правильный результат, поскольку консоль irb экранирует кавычки. Строка будет отображаться без \ в представлении

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