2

私は、次の問題で一日の大半をひどく苦労しています。

  • 私は Rails 3.1 アプリを持っています - 正常に動作しています
  • 私はそれにいくつかのajaxを追加しようとしています

しかし、私が何をしようとしても、Rails は応答ヘッダーで間違った content-type を送信することを主張します。

#the form    
= form_for @signup, :url => '/signup', :remote => true do |f|
    = f.text_field :email, :class => 'email', :size => 26
    = f.submit 'Notify me'

#In the controller
def create
  respond_to do |format|
    format.js { render :content_type => 'text/javascript', :layout => false}
  end
end

#the JS file: create.js.erb
alert('HI!');

これは機能していませんが、機能するはずです。サーバーの応答を Firebug で調べると、応答ヘッダーの content-type がtext/html. これが機能しない理由だと思います(新しく生成されたアプリのように、同じjquery-rails gemを使用してtext/javascriptヘッダーで応答します.

サーバー、JS で応答していると言っています。

Processing by SignupsController#create as JS

しかし、どういうわけか正しいヘッダーの送信を拒否しています。私は次にどこを見るべきか迷っています。

次にどこを見るべきかについての助けや指示は大歓迎です!エルウィン

4

1 に答える 1

4

わかりました解決策を見つけました、

そのため、アプリケーション コントローラーの after_filter が content-type をオーバーライドしていました。そして、それらは裏返しに処理されます。だから、私の宣言を上書きしていました。

于 2011-09-20T09:55:15.263 に答える