(:category_name /:id)路由类型

时间:2012-08-12 01:16:21

标签: ruby-on-rails friendly-url

我有这些模特:

Category(:name)
Post(:category_id, :title, :body)

类别模型只有少量类别,目前我可能的路线是:

/tasks/15015
/categories/5/posts/5641841

我希望有一个这种格式的友好网址,但我无法找到一种不完全通配符并弄乱其他路线的方法:

/politics/518-obama-health-care

正如我所说的,我试过这个但是我正在寻找一些不太通配的东西,如果可能的话,还要与当前的类别更加整合:

match '(:category_name)/(:id)' => 'posts#show'

欢迎任何其他想法!

1 个答案:

答案 0 :(得分:1)

把它放在最后,所以它不会弄乱你的任何其他路线。然后在before_filter中添加show(仅适用于PostsController),以检查:category_name是否有效以及是否提出ActionController::RoutingError