【Rails】フォームのplaceholderを改行する方法


はじめに

今回はフォームの中のplaceholder(下記の画像のもの)を改行する方法について記述します。

開発環境

Ruby on Rails バージョン2.6.5

通常(改行を不要とする場合)の記述

通常改行が不要な場合の記述はこのように記述します

<%= f.text_area :hoge, class:"hoge", id:"hoge", placeholder:'ここに表示させる文字を入力します' %>

ですが、改行をしたplaceholderを作成する場合は、上記の記述に改行を加えても反映されないので、rails helperを使用することで問題が解消されます!

※rails helperをご存知ない方はまずはこちらの記事をご覧ください!
https://qiita.com/yukiyoshimura/items/f0763e187008aca46fb4

rails helperを使用して改行する

まずrails helperにplaceholder内容を記述します!

app/helpers/表示させたいビュー名_Helper
module 表示させたいビュー名Helper
  def メソッド名 
    <<-"EOS".strip_heredoc
           表示させたい文字
           表示させたい文字
           表示させたい文字
    EOS
  end
end

( <<-"EOS".strip_heredoc 〜 EOS この記述をすることで余分なスペースなどが生まれるのを防ぎます)

rails helperにメソッドを定義できれば後はビューファイルにメソッドを呼び出します。

<%= f.text_area :hoge, class:"hoge", id:"hoge", placeholder:rails helperに定義したメソッド名 %>

完成形

先程の記述で無事に改行ができました!
ちなみに『<<-"EOS".strip_heredoc 〜 EOS』の記述がないとこのように無駄なスペースが生まれてしまいます。

参考になれば幸いです🙇‍♂️