Rails 3. simple_format не переносит результат в теги абзацев
Как я могу заставить simple_format не переносить возвращаемое значение в теги p?
simple_format "<span class="required">*</span>"
Ответы
Ответ 1
К сожалению - вы не можете. Если вы проверите источник в http://api.rubyonrails.org/classes/ActionView/Helpers/TextHelper.html#method-i-simple_format, вы увидите, что теги p автоматически обернуты вокруг содержимого.
Вы можете создать помощник, который использует код simple_format, но изменить его, чтобы не включать теги p...
Ответ 2
Вы можете указать опцию wrapper_tag
.
simple_format 'Hello', {}, wrapper_tag: 'span'
Этот код будет:
<span>Hello</span>
Ответ 3
Наверное, не то, что вы действительно хотели, но... Я закончил это:
module ApplicationHelper
def nl2br s
split_paragraphs(sanitize(s, tags: [])).join('<br>').html_safe
end
end
UPD Или лучше:
def nl2br s
sanitize(s, tags: []).gsub(/\n/, '<br>').html_safe
end