如何重命名rails中的默认REST路由?

时间:2010-09-02 17:14:15

标签: ruby-on-rails routing

最重要的是,这个问题是关于Rails 2.x。

我住在西班牙语国家/地区,我的网络应用的网址应该是西班牙语。到目前为止,我总是为我的控制器创建西班牙语拼写动作,但这只是关闭了使用REST的许多优点,比如内置的PUT method => edit action内容。

因此,我想知道如何修改routes.rb文件以重定向所有 所有我现有和未来资源的流量,而不会丢失RESTful标准。

这可能吗?

示例

POST /inmuebles
:controller => inmuebles, :action => create

GET /inmuebles
:controller => inmuebles, :action => index

GET /inmuebles/nuevo
:controller => inmuebles, :action => new

3 个答案:

答案 0 :(得分:5)

Piggy退出了Andrew V的回答,但无法预览我的评论......

由于您的所有资源都可能具有需要相同路径名的相同操作,因此您可以使用with_options块为所有路径设置这些路径。

例如:

map.with_options :path_names => {:new => 'nuevo', :edit => 'editar'} do |rt|
  rt.resources :ineubles
  rt.resources :pollos
  rt.resources :gatos
end

答案 1 :(得分:1)

使用:path_names选项:

map.resources :inmeubles, :path_names => { :new => 'nuevo'}

答案 2 :(得分:0)

你也可以尝试这个i18n_routing gem http://github.com/kwi/i18n_routing