0

私は基本的なフォームを持っていますが、いくつかのエラーを検出した後、フォームの値を維持したいと考えています。

これは私がビューに持っているコードです:

<%= f.text_field :first_name, value: session[:unsaved_user]['first_name'] %>

セッション変数が設定されていない場合は常に、エラーが発生します。

undefined method `[]' for nil:NilClass

私の質問は、セッションでキーが設定されている場合にのみ使用されるように値を書き換えるにはどうすればよいですか?

編集: また、ユーザー コントローラーのデータを検証し、失敗した場合はこの元のサインアップ ルートにリダイレクトします。そのため、送信パラメータをフォームに戻すためにセッションを使用しています。これを行う別のアプローチがある場合は、提案をいただければ幸いです。私はレールにかなり慣れていません。

4

1 に答える 1