2013-06-12 55 views
0

我知道这已被问了很多,但我已经看过所有简单的解决方案,他们不工作。Rails 406 for .js.erb

首先,.js.erb响应我的所有其他控制器的工作...我产生了新的控制器,它不会响应.js.erb

def report 
    @report = Report.all 
    respond_to do |format| 
     format.js do 
     render :content_type => 'text/javascript' 
     end 
    end 
    end 

这条路线做工作,并呈现html。我不知道为什么.js.erb会为我的其他控制器工作,而不是为新的控制器工作。在做这个新的之前,我已经做了很多的调整......所以调试对我来说很难。

+0

如何摆脱':content_type'键? –

+0

@CodyCaughlan,试了一下。尝试了很多格式的变化。 –

回答

1

删除整个respond_to块。 Rails会选择正确的视图:

def report 
    @report = Report.all 
end 
+0

它会选择html而不是js。 –

+0

即使我在我的构造函数中有'respond_to:js' –

+0

如果我想渲染html然后.js,它将不起作用,对吧? Rails只会渲染一个或另一个?我想呈现HTML,然后从.js初始化一些jQuery的东西。这是不好的做法吗? –