Rails アプリで問題が発生しています。ユーザーがフォームで送信をクリックすると、ブラウザーの処理が停止し (KILL_CURSOR)、フォームを再送信すると、データベースに重複したエントリが作成されます。送信後の入力を無効にする JavaScript をインストールしようとしましたが、このユース ケースでは機能しません。
フォームが同じ認証トークンを持っていても、フォームが再送信されているかどうかを検証する方法はありますか?
これが私のコントローラーです:
def create
@location = Location.new(params[:location])
@location.user_id = current_user.id
if @location.save
#refresh window to show new location
render :js => "window.location.reload();"
#check that form fields have been completed properly
else
respond_to do |format|
format.js
end
end