📝
[Ruby on Rails] text_areaから入力されたtextデータを表示させる時に改行されてない!
Railsで何らかのアプリケーションを作っている時に、フォームに入力した文章は↑画像のように改行していたのにテーブルから取り出して表示させる時に、↓画像を見て、「あれ、改行されていない!」ということはよく起こると思います。(少なくとも僕はよく起こります。そしてこの現象に遭遇するたび「どうするんだっけ?」ってなります。)
結論:
textデータをsimple_format()でくくる。
<%= simple_format(text) %>
こうすれば、下図のようにテキストを表示させても改行が保持されます。
simple_format() とは?
simple_format()は、与えられた文字列を以下の条件で整形する標準のヘルパーメソッドです。
・文字列を<p>で括る
・改行はbrを付与(Zennの仕様上、brのタグとして書いたらエスケープされずにbrタグと扱われて改行されてしまったので、</>をつけずに書きました。)
・連続した改行は、</p><p>を付与
Discussion