2010-12-02 104 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