我有一个博客资源blogs_controller,所以我如下得到了典型的路线现在:在Rails中做“/ blogs /:year /:month /:day /:permalink”路线的最佳方法是什么?
/blogs/new
/blogs/1
/blogs/1/edit #etc
但在这里就是我想:
/blogs/new
/blogs/2010/01/08/1-to_param-or-something
/blogs/2010/01/08/1-to_param-or-something/edit #etc
...
/blogs/2010/01 # all posts for January 2010, but how to specify custom action?
我知道我可以通过map.resources和map.connect的组合来实现,但是我有很多通过“new_blog_path”链接到其他页面的视图,我不想去编辑它们。单独使用map.resources可能吗?这可能并不容易,但我并不反对聪明。我想的是一样的东西:
map.resources :blogs, :path_prefix => ':year/:month/:day', :requirements => {:year => /\d{4}/, :month => /\d{1,2}/, :day => /\d{1,2}/}
但我不知道如何与像行动工作“新”或“创造”,而这也给了我像/2010/01/08/blogs/1-to_param-etc
路线与博客中的中间URL。
那么,有没有一个聪明的解决方案,我错过了,或者我需要去map.connect路线?
感谢周杰伦这是一个很好的写法,为我节省了很多时间! – 2010-07-10 20:00:08
真棒解释! – 2010-10-19 03:42:48
该路线的导轨3版本是什么? – sguha 2013-03-15 11:10:04