【发布时间】:2011-05-10 21:36:36
【问题描述】:
我的任务是按照路由模型开发 Rails 应用程序。
我需要有PageController 和Page 模型。页面 url 必须像 /contacts, /shipping, /some_page。
我还需要CatalogController 和Category 模型。类别网址必须类似于/laptops, /smartphones/android。
并且它将是ProductsController和Product型号,产品的url必须是/laptops/toshiba_sattelite_l605,/smartphones/android/htc_magic。
我知道这个问题可以通过使用类似的 URL 来解决
/page/shipping/catalog/smartphones/android
但客户不希望看到在 URL 中插入“/page”或“/catalog”。
请告诉我解决这个问题的方向。 对不起我的英语不好。
【问题讨论】:
-
如何区分
/something是页面还是类别? -
可能是类别(/laptops),也可能是页面(/contacts)。当然,我知道类别和页面模型需要有一些字段,比如“slug”,并且它必须在站点中是唯一的。
-
这是一个非常糟糕的主意。如果他们担心网址“丑陋”,那么他们可以执行
/faq/contacts或/questions/shipping之类的操作。 -
查看官方 Rails 路由指南@guides.rubyonrails.org/routing.html
-
你找到解决方案了吗?我也很感兴趣......但谷歌没有帮助我:(我使用友好的_id,它生成了一个带有 slug 名称的表 slug,它是 id 和控制器名称(sluggable_type)字段...但没有文档显示如何将其用于路由目的。欢迎提供任何帮助。问候。
标签: ruby-on-rails ruby ruby-on-rails-3 url-routing