2016-08-28 12 views
1

Simple-Captchaを使用してRuby-on-Railsフォームを作成しました。次の更新方法のみ正しく入力キャプチャの場合に属性を更新します。間違ったキャプチャが送信されると更新が失敗した後にフォームを変更する方法

@place = Place.find(params[:id]) 
if simple_captcha_valid? 
    @place.update_attributes(params) 
else 
    flash.now[:danger] = 'Captcha not valid!' 
    render :edit 
end 

、フォームは、元のモデルの属性(変更が上書きされている)で再レンダリングされます。そのような場合、どのように変更をフォームに残すことができますか?

答えて

0

@placeオブジェクトを、保持したいパラメータで再初期化する必要があります。このようなもの:

if simple_captcha_valid? @place.update_attributes(params) else @place.assign_attributes(params) flash.now[:danger] = 'Captcha not valid!' render :edit end

関連する問題