Re:ゼロから始めるNo Error No Life

ぷろぐらみんぐ的なことと趣味的な日常を少々

formの入力値の保持

formの入力値の保持

当初は、sessionに入れればいいかなって思って

探したら意外に簡単な方法で実装可能だった。

def create
  #何かしらの処理
  @hoge = Fuga.new(params)
  render action: :new and return
end

Fuga classのインスタンス化(オブジェクトの実体化)を行う際に引数でparamsを渡すだけ

その後renderでaction指定してます。またand returnは基本的には必要ありません。

流れとしては、newのページからformで何かしら入力されて送信されてきた際、バリデーション等で引っかかった場合などにparamsの値を保持してnew actionにrenderで返してあげたい場合などにparamsを引数にインスタンス化を行い、インスタンス変数に代入してあげることによって画面に入力値は表示されます。

お問い合わせや新規作成の時に入力項目の不足、指定外文字の入力をされた際などに 入力されたそれ以外の値の保持などを行いたい時に使うことがあるかなー ってノリです。

本日qiitaにてこんな記事公開しました。

qiita.com