2014-02-17 37 views
5

我有,我执行AJAX一个js.erb文件中获取像这样:Rails的控制器处理为*/*

$.get("<%= j @stored_location %>"); 

一切都很好,但是我的服务器日志显示此:

Processing by XyzController#index as */* 

我知道“/”的意思是“任何格式”,并且一切正常,所以我想知道是否有任何意思,以确保Rails明确处理这个行为为:js。我需要添加一些东西给$.get电话吗?我应该打扰吗?

回答

10

1:你应该打扰吗?

我认为,对于这些事情,尽可能确切和明确地表达一个好习惯。如果您希望根据将来的请求时间针对同一个网址做出不同的回答,则必须处理此问题。所以是的,你应该打扰。更糟糕的情况下,你会从中学到新的东西:)

2:如何解决这个问题?

Jquery Get documentation列出了您可以传递给您的呼叫的dataType参数。因此,举例来说,如果你期待一个JSON从你的要求可能是这样的服务器返回:

$.get({ 
    url: "<%= j @stored_location %>", 
    data: data, 
    success: success, 
    dataType: "json" 
}); 

看一看的文件,并决定什么是最适合你的情况。

+2

谢谢,最后我使用了'dataType:“script”',完美地工作。 – stephenmurdoch

+0

谢谢。非常感谢。 –