我的rails版本 2.3.5 (2.3 +)
如何访问带有.html后缀的网址?
就像localhost:3000/welcome.html
一样(欢迎是控制者)。
当我访问上面的网址时,我收到了路由错误。但是如果网址格式为这样的网址,则会有效:
localhost:3000/welcome?format=html
在routes.rb中:
ActionController::Routing::Routes.draw do |map|
map.root :controller => "welcome"
map.resources :users
map.resource :session
map.connect ':controller/:action/:id'
map.connect ':controller/:action/:id.:format'
end
但是我发现localhost:3000/users.html
有效。
答案 0 :(得分:1)
使用此路线连接到控制器:
map.connect "welcome.html", :controller => :welcome, :action => :index
是否.html
与路由无关,它就像连接到任何其他控制器的任何其他路径一样。因此,无需为此修改控制器
使用format=html
会产生一个参数,因此控制器可以返回特定类型的结果,根据您的问题,这不是您想要的结果。
根据您的信息,在使用.html
方法创建路线时,会自动执行此操作(允许路径中的map.resources
)。因为它适用于您的示例中的用户。
答案 1 :(得分:1)
你可以试试这个:
map.connect ':controller.:format', :action => :index