1

我有一个分为三个单元(子域)的站点:

example.com # Main Site
archive.example.com # Searchable Archive
admin.example.com # CMS

在底部,config/routes.rb我将子域和根映射如下:

  match "/" => "archive#index", constraints: {subdomain: "archive"}
  match "/" => "admin#index", constraints: {subdomain: "admin"}
  root :to => "pages#index

我有许多资源,目前声明如下:

  resources :users
  resources :themes
  resources :downloads

使用此设置,资源在所有子域中都可用,因此对于users资源,以下内容均有效:

archive.example.com/users
admin.example.com/users
example.com/users

如何设置我的路由,以便users仅在管理子域下可用? 访问archive.example.com/usersexample.com/users应该导致路由错误。

4

1 回答 1

2

这应该可以解决问题:

constraints :subdomain => "admin" do
  resources :users
end
于 2013-09-26T11:15:59.297 回答