2012-01-03 8 views

Respuesta

10

desgracia - no se puede. Si consulta la fuente en http://api.rubyonrails.org/classes/ActionView/Helpers/TextHelper.html#method-i-simple_format, verá que las etiquetas p están envueltas en el contenido incondicionalmente.

Se puede crear un ayudante que utiliza el código simple_format, pero no modificarlo para incluir las etiquetas p ...

+1

¿existe una alternativa a simple_format? todo lo que quiero que mi método muestre es ' *' y tener el HTML interpretado – leonel

+1

bien otra vez - simple_format tiene solo 9 líneas de longitud, y si eliminó la segunda, octava y novena líneas, no pondría las etiquetas P más. Pero, no estoy seguro de lo que quiere decir con "tener el HTML interpretado"? – elijah

+2

parece que en Rails 4 podrá cambiar la etiqueta de contenedor como 'simple_format (mi_text, {}, wrapper_tag:" div ")' pero no funciona para mí en Rails 3 – FireDragon

1

Probablemente no lo que realmente quería, pero ... que terminé haciendo esto:

module ApplicationHelper 
    def nl2br s 
    split_paragraphs(sanitize(s, tags: [])).join('<br>').html_safe 
    end 
end 

UPD O mejor esto:

def nl2br s 
    sanitize(s, tags: []).gsub(/\n/, '<br>').html_safe 
end 
4

puede especificar wrapper_tag opción.

simple_format 'Hello', {}, wrapper_tag: 'span' 

Este código será:

<span>Hello</span> 
Cuestiones relacionadas