2

更新:質問を少し書き直しました。以下のように私のサブドメインをルーティングしようとしています

  • login.app.ltd
  • user1.app.ltd
  • user2.app.ltd
  • signup.app.ltd

使用する

  • レール3.2
  • 工夫

いくつかのチュートリアルのブログ投稿を試してみても無駄ですが、これの実用的な例を知っている人はいますか?本当にこれにこだわった:(

これが私のルートです。

 match '', to: 'frontend#index', constraints: lambda { |r| r.subdomain.present? && ( r.subdomain != 'www') }
  #match '' => 'home#index', :constraints => { :subdomain => 'login' }


  constraints :subdomain => /^(?!signup\b)(\w+)/ do
    root :to => "frontend#index"
  end

  root :to => "frontend#index"
4

2 に答える 2

2

私のRailsApps プロジェクトでは、サブドメインの使用方法を示す完全なサンプル アプリを提供しています。

Devise を使用したサブドメインの Rails チュートリアル

あなたはそれを見ましたか?

config/routes.rb

devise_for :users
resources :users, :only => :show
constraints(Subdomain) do
  match '/' => 'profiles#show'
end
root :to => "home#index"

lib/サブドメイン.rb

class Subdomain
  def self.matches?(request)
    case request.subdomain
    when 'www', '', nil
      false
    else
      true
    end
  end
end
于 2012-09-06T23:18:11.693 に答える
1

いくつかの助けを借りて、それを機能させることができました

次のことを行う必要があります。

 constraints subdomain: 'login' do
devise_scope :user do
  root to: 'sessions#new'
end

終わり

于 2012-04-20T11:50:02.803 に答える