我想使用资源在Ruby on Rails中创建路由,但我不想在URL中使用路径。 (例如/fishing/3
而不是/board/fishing/thread/3
。)这是我当前的路线配置。
resources :board, :only => [:index, :create, :new], :path => '' do
resources :thread, :only => [:index, :create, :new], :path => ''
end
但是,路线无序。例如,/:board_id(.:format)
出现在/new(.:format)
之前,因此无法到达线程#new动作。有没有办法覆盖这个?
答案 0 :(得分:0)
所以这有点棘手,因为它可能会混乱其他路线。您当前的解决方案可能会在URL中使用双斜杠创建路由。此路线应位于路线文件的附近或底部,以便首先找到所有其他有效路线。
match '/:board_id/:id' => 'thread#show', :constraints => { :id => /\d*/ }