【发布时间】:2011-07-01 15:07:32
【问题描述】:
我想基于 URI 在 rails 中实现一个特殊的路由(我正在使用带有 Mongoid 和设计的 rails 3.0.4)。假设我的用户登录,一旦登录我想将他重定向到一个私人区域,例如http://www.mysite.com/site1。许多用户可能属于site1,许多用户属于site2...一个站点的用户无权查看另一个站点。今天登录后重定向很好,但我对如何实现 siteX 感到困惑(每个站点都有自己的数据)。我有以下路线:
match '/:site_name' => 'site#index', :constraints => { :site_name => /'a pattern'/ }
resources :sites do
end
因为我需要坚持这种 URI 格式,我应该将所有其他资源嵌套在 :sites 中吗?例如,如果我想显示站点 2 的订单 1,则 URL 应类似于 http://www.mysite.com/site2/order/1。我不能将资源的名称“站点”放在 URI 中,因为它直接以标识符开头。有没有其他方法可以做到这一点,最好的做法是什么?希望我的解释有意义。
非常感谢您的帮助! 泰德
【问题讨论】:
标签: ruby-on-rails routing uri