rails 3渲染xml,与request.format无关

我正在尝试创建一个API,我需要返回xml,无论请求格式如何.

现在我的控制器中有以下内容

def index  
   @posts = Post.all  
   respond_to do |format|  
      format.xml  
   end  
end  

我有一个index.xml.builder

‘/posts.xml’适用于我,但不适用于’/ posts’

我试过request.format =:xml给了我一个SystemStackError(堆栈级别太深):为什么会这样.

如何强制控制器为所有类型的请求呈现xml?所以我不需要在url中指定看起来干净整洁的格式?

最佳答案

def index
  @posts = Post.all
  respond_to do |format|
    format.any do
      render :xml => @posts.to_xml
    end
  end
end
点赞