エラー後もフォームフィールドを入力されたままにする (RoR) 質問する

エラー後もフォームフィールドを入力されたままにする (RoR) 質問する

検証後、エラーが発生し、 に戻りました:action => :new。フォームの一部のフィールドはすでに入力されているため、エラー メッセージが表示された後も入力されたままにしておきたいです。どうすればいいでしょうか?

ベストアンサー1

ビュー(new.html.erb)は次のようになります

<%= error_message_for :user %>
<% form_for :user, :action=>"create" do|f|%>

<%= f.text_field :login %>

<% end %>

コントローラーコード (create メソッド)

def create
  @user=User.new(params[:user])
  if @user.save
     redirect_to :action=>'index'
  else
     render :action=>'new'  #you should render to fill fields after error message
  end
end

おすすめ記事