Маршрутизация домена / субдомена и использование контроллеров пространства имен - PullRequest
0 голосов
/ 23 февраля 2010

В настоящее время я направляю весь трафик, который является поддоменом и / или названным на моем сайте, на контроллер, называемый внешним, и методом, называемым обработчиком.

Это очень запутанно, и я хотел бы его очистить.Я хотел бы, чтобы все внешние запросы обрабатывались обычным способом rails ": controller /: action /: id", однако я хочу, чтобы эти контроллеры находились в их собственной папке, чтобы в моих основных контроллерах не было перекрытия./controllers/external/controller_name.rb

Вот что у меня есть на данный момент:

  not_domain_regex = Regexp.new('\A(?!(' + SiteConfig::domain.gsub('.', '\.') + '))', true)
  is_domain_regex = Regexp.new('\A((' + SiteConfig::domain.gsub('.', '\.') + '))', true)
  map.connect(
    '*path',
    :controller => 'external',
    :action => 'handler',
    :conditions => {
    :domain => not_domain_regex
    }
  )
  map.connect(
    '*path',
    :controller => 'external',
    :action => 'handler',
    :conditions => {
    :domain  => is_domain_regex,
    :subdomain => /([a-z0-9\-\_]{1,100}[^www])/i
    }
  )

Я полностью потерян.Поэтому я хотел бы иметь функциональность, которая будет выглядеть следующим образом:

map.connect(
  ':controller/:action/:id',
  :namespace => 'external',
  :conditions => {
  :domain => not_domain_regex
  }
)

1 Ответ

0 голосов
/ 01 марта 2010
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...