Rails:渲染文本给出了misstemplate错误

时间:2012-07-13 01:02:20

标签: ruby-on-rails ajax

我正在尝试使用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  ....

我不明白为什么会这样。由于我正在渲染文本,不应该知道不尝试查找模板并只渲染文本吗?

1 个答案:

答案 0 :(得分:4)

如果没有{}respond_to块会查找名为change_profile.erb.js或其他change_profile.xxx.js的文件。在respond_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