在FriendlyID slug中隐藏资源名称

时间:2012-06-18 12:40:07

标签: ruby-on-rails routes friendly-id

我正在使用FriendlyID为我的一些模型制作slu ..

要使用FriendlyID文档(http://rubydoc.info/github/norman/friendly_id/master/frames)中提供的示例,我的网址目前如下所示:

http://localhost:3000/cities/seattle/restaurants/joes-diner

鉴于在我的情况下,一个城市除了餐馆之外什么都没有,我正在寻找一种方法来删除URL中的“餐馆”位,以便它看起来像这样:

http://localhost:3000/cities/seattle/joes-diner

或者如果可能的话甚至

http://localhost:3000/seattle/joes-diner

实现这一目标的最佳方法是什么 - 如果完全可取的话?我可以想象最后一个选项可能会产生一些复杂性。

2 个答案:

答案 0 :(得分:3)

您可以在http://guides.rubyonrails.org/routing.html#controller-namespaces-and-routing#controller-namespaces-and-routing

中找到问题的解决方法

您可以使用:path => ""执行此任务。

问候!

答案 1 :(得分:0)

具有规格的解决方案和正确的编辑\更新等slu :::

http://jasoncodes.com/posts/rails-3-nested-resource-slugs#solution