2011-06-17 5 views
7

Birkaç farklı alan adı, kahramanku uygulamamı işaret ediyor. Örneğin, foo.com ve bar.com her ikisi de uygulamayı işaret ediyor. (Özel blog sayfalarına ev sahipliği yaparız ve foo.com, web sayfaları oluşturan kullanıcılarımız tarafından kullanılan alan adıdır ve bar.com, blog sayfalarının bulunduğu 'herkese açık' etki alanıdır.)rayları 3 - bir uygulama, birden fazla alan adı, alanlardan biri için farklı bir 'kök' rotayı nasıl uygularsınız?

Tüm kullanıcı- düzenleme sayfalarında Devise kimlik doğrulaması bulunur ve foo.com'daki "root", Kullanıcı gösterge tablosu sayfasıdır. Ve bir giriş yapmış kullanıcı foo.com/reviewpage/USERID

her kullanıcı acount ayrıca

"acme-inc-dallas-tx" olarak benzersiz bir "dost url adı" vardır

de kendi blog sayfasını önizleme yapabilirsiniz denetleyici => mycontroller,: kamu bakan web sayfası bar.com (ama SADECE bu bir etki) günü, ben bir şekilde karşı

http://bar.com/friendly-url-name haritaya ihtiyaç action => MyAction

Ben o araçlar üstlenecek Bar.com'da ('SADECE bar.com') 'root''u yeniden haritaya eklemem gereken bir "find_friendly_url" metoduna ihtiyacım var. uygun sayfa ve görüntüler.

Eğer devam etmek için doğru yol buysa ... uygulamamı işaret eden bir ve yalnızca bir alan için 'root'u yeniden nasıl değiştirebilirim?

constraints(Subdomain) do 
    match "/" => "home#admin" 
end 

match "/" => "home#standard" 

Veya:

/(.:format) {:action=>"admin", :subdomain=>"admin", :controller=>"home"} 
root /(.:format) {:action=>"standard", :controller=>"home"} 

aynı mantık istenen alt etki alanları için geçerlidir yolları oluşturmanızı sağlar: yaratır

match "/" => "home#admin", :constraints => {:subdomain => "admin"} 

match "/" => "home#standard" 

şöyle

cevap

8

Genellikle geçin.

+0

çok güzel teşekkürler ... Alt alan yerine host => "otherdomain.com" kullandım ve harika çalıştı. – jpwynn

İlgili konular