Субдомены и ресурсы в Rails 3

У меня есть сайт, который разделен на три блока (субдомена):

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

На дне config/routes.rb Я сопоставляю поддомены и root следующим образом:

  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/users или же example.com/users должно привести к ошибке маршрутизации.

1 ответ

Решение

Это должно сделать трюк:

constraints :subdomain => "admin" do
  resources :users
end
Другие вопросы по тегам