2012-12-28 7 views
8

In che modo posso consentire agli utenti di immettere testo su più righe in un campo modulo text_area?Come si consente il contenuto di più righe in un campo text_area di rotaie?

Attualmente il contenuto di qualsiasi momento viene inserito nello text area le interruzioni di riga vengono rimosse ... Vengono mantenute quando si modifica il contenuto ... Quindi, forse è nella visualizzazione dello spettacolo che le interruzioni vengono rimosse?

Ho trovato alcune cose che indicano che avrei bisogno di implementare un editor WYSIWYG, ma preferirei evitarlo, se possibile.

Qualche suggerimento?

UPDATE: Così, sembra che le rotaie salva il contenuto con interruzioni di riga, e posso aggiungere .html_safe al campo dello spettacolo vista (cioè <%= @post.post.html_safe %>). Ora presenterà il contenuto con html di base (ad esempio <br>, <b>, ecc.) Ma non presenta ancora le interruzioni di riga nel contenuto (cioè quando premo invio per una nuova riga) che vengono salvate da binari e posso guarda quando sto modificando il contenuto.

+0

una textarea ha nulla Rotaie specifica. Html is html – apneadiving

risposta

11

Le interruzioni di riga non vengono visualizzate in formato HTML. Ti consigliamo di utilizzare qualcosa come simple_format o wraptext sul tuo contenuto mentre lo fai eco per convertire le nuove righe in tag <br> o <p>.

<%=simple_format(@post.post).html_safe %> 

o

<%=Wraptext::Parser.new(@post.post).to_html.html_safe %> 
+0

Ok, lo controllerò ... Grazie Chris! –

+0

'simple_format' ha': sanitize' abilitato di default, quindi '.html_safe' è ridondante. –

+0

Grandi, 'simple_format' e' html_safe' sono esattamente ciò che sto cercando, grazie Chris. – mainframer

Problemi correlati