LoginSignup
0
1

More than 1 year has passed since last update.

Ruby on Rails 投稿フォームでの改行を反映

Posted at

この記事は学習中に実装した内容をアウトプットし、更に理解を深めるための記録用投稿になります。
投稿している内容と同じ箇所で躓いている方に少しでもお力添えできれば幸いです。


解決したい内容

入力フォームで入力した内容を表示させるときに改行が反映されずに空白が入り表示されるのを解決し、入力した時のレイアウトのまま表示したい。

実装前


スクリーンショット 2022-04-21 19.45.11.png

実装後


スクリーンショット 2022-04-21 19.44.40.png


前提

・紹介文はdishesテーブルのintroductionカラム。
・form_withは記述済み

解決方法

エスケープしてから改行コードを変換

1,まずh関数で特殊文字をエスケープ
2,その後改行コードをbrタグに置換
3,その結果をhtml_safeやrawで表示させる

*変更前

<%= @dish.introduction %>

*変更後

<%= h(@dish.introduction).gsub(/\n|\r|\r\n/, "<br>").html_safe %>

今回、実装した際に「エスケープ」や「gsub」「html_self」などの初めて知った用語や記述方法を知りました。
難しそうですがさらに調べて理解を深めていこうと思います!

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1