0
私はjQuery UJSと私のRailsに3アプリをリモートフォームを追加しようとしている、とフォームが正しくその要求を送信するように見えるが、サーバーは406「受け入れられない」エラーを返します。Rails 406「リモートフォームでは許容されない」エラー?
Started POST "/account.1" for 127.0.0.1 at 2011-06-30 07:14:27 +0200
Processing by AccountsController#update as
...
Completed 406 Not Acceptable in 295ms
のjQueryを-UJSは正しいHTTP_ACCEPTヘッダー送信されるように表示されます。
text/javascript, application/javascript, application/ecmascript,
application/x-ecmascript, */*; q=0.01
を、私はこれをデバッグしようとするために必要最小限にaccounts#update
アクションを剥奪しましたが、何も働いていたんだ:
class AccountsController < ApplicationController
respond_to :html, :js
def update
@account = Account.find(params[:id])
respond_with(@account) do |format|
format.html
format.js
end
end
end
Google APIを使用してjQueryライブラリを読み込むためにHTML5 Boilerplateを使用していますが、Modernizrを使用して<head>
要素の代わりにページの下部にJavascriptを挿入しています。
誰もこれに遭遇しましたか?私は間違って何をしていますか?
@trisignia:この回答が正しいかどうかを確認するには、ルーティングを確認し、このURLでa:formatパラメータを "1"に設定しているかどうかを確認します。おそらくあなたはコンテンツタイプを奇妙な値にしてしまったでしょう。 Hovewer、なぜあなたの行動は明らかにparams ['id']を認識しますか?あなたのルートはどのように見えますか? – Arsen7
これは本当に問題でした。コントローラーが自動的に正しいアカウントをインスタンス化していたので、私はだまされました。フォームのアクション属性を修正したら、それはうまくいった。ありがとう。 – trisignia