Ruby on rails 不匹配该子域中请求的子域约束之外的路由

Ruby on rails 不匹配该子域中请求的子域约束之外的路由,ruby-on-rails,rails-routing,Ruby On Rails,Rails Routing,从routes.rb: constraints subdomain: 'admin' do scope module: 'admin', as: 'admin' do resources :subscribers root 'dashboard#index' end end resources :users root 'dashboard#index' 在当前代码段下,GET admin.domain.xzy/users仍会触发用户控制器操作。我知道规则将继续被解析,

从routes.rb:

constraints subdomain: 'admin' do
  scope module: 'admin', as: 'admin' do
    resources :subscribers
    root 'dashboard#index'
  end
end

resources :users
root 'dashboard#index'

在当前代码段下,GET admin.domain.xzy/users仍会触发用户控制器操作。我知道规则将继续被解析,直到有人指定为止。有没有办法改变这种行为?这样,对于子域约束,路由器将只在该块内搜索。

为什么不将有问题的行放在另一个约束内

  constraints(NoSubdomain) do
    resources :users
  end
约束看起来像这样:

class NoSubdomain
  def self.matches?(request)
    !request.subdomain.present?
  end
end