我目前正在将所有子网站和/或cnamed的流量引导到名为external的控制器和名为handler的方法。
这已经非常混乱,我想清理它。我希望所有外部请求都能以正常的方式处理“: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
}
)