Railsでajaxリクエストが2回送信されてしまう
Railsではヘルパーのform_forメソッドで:remote => trueというパラメータを渡すとformタグにdata-remote=trueというHTML5の属性が追加されて後はRailsのJavaScriptがよろしくデータをAjax送信してくれるわけですが、何故か急にリクエストが2回送信されるようになって困ってしまいました。
どうやらネットで調べるとjQueryを2重に読み込んでしまうと発生するというところまでわかったのですがそんなことはやっていません。
が、よくよくJavaScriptのソースを確認してみるとapplication.jsのソース内に何故かjQueryの文字が。なんだこれと思って考えてみるとそういえばなんとなく動くかなとアセットプリコンパイルを実行したのを思い出しました。
結果コンパイル済みのJavaScriptと既存のJavaScriptを2重に読み込んでいたというオチでした。ということでpublic/assetsフォルダのプリコンパイルソースを消して無事解決。
事象から問題になかなかたどり着けなくてかなりはまってしまったよ...