3

Rails で AJAX 呼び出しを実行しようとしています。呼び出しは、コントローラーの change_profile アクションに対するものです。このアクションの内容は次のとおりです。

def change_profile
    @test = params[:test]
    puts "AAAAAAA #{@test}"
    respond_to do |format|
       format.html
       format.js
    end
    render(:text => "FINISHED THE AJAX REQUEST")
end

ただし、これを呼び出すと、Rails コンソールには次のように表示されます。

ActionView::MissingTemplate (Missing template main/change_profile  ....

なぜこれが起こっているのかわかりません。私はテキストをレンダリングしているので、テンプレートを見つけようとせずにテキストをレンダリングすることを知っているべきではありませんか?

4

1 に答える 1

4

なしで放置する{}と、respond_toブロックはchange_profile.erb.jsまたはという名前のファイルを探しますchange_profile.xxx.jsrespond_toブロック内にコードを追加します

def change_profile
    @test = params[:test]
    puts "AAAAAAA #{@test}"
    respond_to do |format|
       format.html
       format.js {
         render :text => "FINISHED THE AJAX REQUEST"
       }
    end
end
于 2012-07-13T01:07:58.010 に答える