【发布时间】:2011-06-25 08:38:36
【问题描述】:
我正在将 Rails 2.3.8 版本迁移到 Rails 3.0,因此我重写了我的路线文件。当我使用rake routes 列出路线时,我看到一些路线名称附加了_index。我不知道为什么会这样。
相关路线:
Rails 2.3.8:
map.namespace "tracker", :path_prefix => "" do |planner|
planner.resources :planner, :collection => {:step1 => :get,
:add => :get,
:unsubscribe => [:get, :post] }
end
Rails 3.0 路线:
namespace "tracker", :path => "" do
resources :planner do
collection do
get :step1
get :add
get :unsubscribe
post :unsubscribe
end
end
end
来自rake routes的输出
Rails 2.3.8
step1_tracker_planner GET /planner/step1(.:format)
add_tracker_planner GET /planner/add(.:format)
unsubscribe_tracker_planner GET /planner/unsubscribe(.:format)
POST /planner/unsubscribe(.:format)
Rails 3.0
step1_tracker_planner_index GET /planner/step1(.:format)
add_tracker_planner_index GET /planner/add(.:format)
unsubscribe_tracker_planner_index GET /planner/unsubscribe(.:format)
POST /planner/unsubscribe(.:format)
任何关于为什么添加此_index 的想法将不胜感激。
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-3 routes