私はコントローラを持っていますが、FirefoxではすべてのアクションがIE8でレンダリングされず、Chromerは正常に動作します。問題はこのコントローラーだけであり、私は別のものがOKです。RAILS:Internet Explorer 8でアクションがレンダリングされず、代わりにポップアップをダウンロード
コードは次のとおりです。
class CustomersController < ApplicationController
auto_complete_for :customers, :name
def search
unless params[:q].nil?
@customers = Customer.find(:all, :conditions => ['name LIKE ?',
"%#{params[:q]}%"])
end
respond_to do |format|
format.xml { render :xml => @customers}
format.json { render :json => @customers}
end
end
def index
@customers = Customer.find_index
end
def show
@customer = Customer.find(params[:id])
end
たとえばindexアクションをレンダリングし、代わりにIE8は、ダウンロードダイアログを表示するが、私はこのようなindexアクションを編集した場合に取得されていません。
def index
@customers = Customer.find_index // a find all but ordered.
respond_to do |format|
format.html
end
end
どれでもアイデアは何が起こっている?
UPDATE:あなたのすべての利害のために
は、問題は、テンプレートファイル名でした。 「customers.html.erb」のようなファイルが「text/html」として返送されている間に、「invoice.erb」のような名前を持つすべてのファイルがコンテンツ「text/erb」としてブラウザに返送されました。 すべてのファイルの名前を "html.erb"に変更すると、すべて正常に動作します。
ちょうど不思議なことに、なぜこのエンドポイントをブラウザで打つのですか? xmlとjsonだけを返すエンドポイントは、通常、AJAXによって呼び出されます。あなたがそれらが動作することを確認するためにそれらをテストしようとしているなら、あなたはそれのためのテストを書くべきです。 – Samo
@サモ:あなたは検索方法について話していますか?もしそうなら、あなたは言ったように、私はそれをajaxメソッドとブラウザを使ってテストするためだけに使っています。 – pbruna
ああ、私は誤解して申し訳ありません、あなたは明示的にhtmlをレンダリングしない限り、アクションのどれもIE8で正しくレンダリングされていないと言っています。私の間違い。 – Samo