这是我在控制器中的代码
respond_to do |format|
format.html
format.xml { render :xml => @menus }
end
当我输入“http://192.168.210.136:3000”时,它会呈现html版本。
但我如何申请xml版本?我试过http://192.168.210.136:3000.xml和http://192.168.210.136:3000/index.xml没有运气。
谢谢!
答案 0 :(得分:1)
在一般情况下,您将.xml
后缀添加到您的URL,以告诉Rails响应者您想要什么。您的控制器逻辑是处理传入请求的正确方法。
E.g。 XML中ID = 1的User
show
如下所示:
答案 1 :(得分:1)
如果您希望在根路由中返回XML(默认情况下),您可能需要更改routes.rb以使其更明确,如下所示(rails 3示例):
Sandbox::Application.routes.draw do |map|
root :to => "static#index", :format => :xml
end
在rails 2.3.x上,您可以将路由传递为默认哈希,如下所示:
map.connect 'photos/:id', :controller => 'photos',
:action => 'show',
:defaults => { :format => 'jpg' }
有关rails路由器的更多信息,请查看官方Rails指南: http://guides.rubyonrails.org/routing.html
答案 2 :(得分:1)