2010-12-02 58 views
5

我想从API访问Rails应用程序资源(它发送一个应用程序/ XML GET请求),我想不必解析XML文件。Ruby on Rails的:帮助渲染:布局=>假

在我的资源控制器我有以下几点:

def get_resource 
    @my_resource = Resources.new 
    render :xml => @my_resource 
end 

预期产生的XML文件。如果我将其替换为:

render :layout => false 

我的API报告“模板缺失”错误。我也试过以下内容:

render :xml => @identity, :layout => false 

但是页面仍然呈现。什么是正确的方式去做这件事?

回答

9

当您渲染:xml时,它不使用布局,因为它不使用任何模板。通过指定:layout => false,您可以告诉rails寻找一个不存在的模板。

现在,如果你不想分析一个XML文件,那么你有几个选择。或者:

render :json => @my_resource 

render :text => "My resource name is: #{@my_resource.name}" # Whatever you want 

这一切都取决于你想如何的结果看,您的API预计将收到什么。因此,如果您没有找到任何有用的信息,请举例说明您希望响应的外观。

+0

感谢这就是我一直在寻找。 – David 2010-12-02 12:14:45

+1

总是有`render nothing:true` – 2013-11-14 16:28:01