7

Mountable Engines으로 몇 가지 실험을하고 있습니다. 먼저 시나리오에 대한 의견이 필요합니다. 응용 프로그램에서 "탑재 가능한 엔진"으로 "대형 모듈 덩어리"를 만드는 것이 좋습니다.서브 도메인에 엔진 탑재 레일 3.1

나는 이것을 잘 해내려고 노력했다. 마운트 가능한 엔진에서 우리는 전역 적으로 응용 프로그램의 모델에 액세스 할 수 있으며 우리는 모듈 접두사가있는 엔진 모델에 액세스 할 수있다. 그래서 그것은 나를 위해 잘 작동합니다.

이제 원래의 질문에 온 :

내가 특정 하위 도메인에 대한 모든 요청이 특정 엔진에 의해 제공되어야 있도록 하위 도메인에 엔진을 탑재합니다. 나는이 코드를 사용했다. 이 경우에 mydomain.com

root :to=>'dashboard#index' 
scope :subdomain => 'admin' do 
    mount MyAdmin::Engine => '/' 
end 

admin.mydomain.comdashboard controller 간다. 내가이 경우 그

scope :subdomain => 'admin' do 
    mount MyAdmin::Engine => '/' 
end 
root :to=>'dashboard#index' 

같은 기본 설정을 변경하는 경우 mydomain.comadmin.mydomain.comengine specific root controller로 이동합니다.

어떻게이 시나리오를 수행하고 특정 하위 도메인에 엔진을 탑재 할 수 있습니까? 레일 3.2.12 작업

scope :subdomain => 'www' do 
    root :to=>'dashboard#index' 
end 
scope :subdomain => 'admin' do 
    mount MyAdmin::Engine => '/' 
end 

답변

11

나는 이러한 경로 항목을 사용하여 작업을 수행. 특정 하위 도메인에 엔진을 허용하면서 하위 도메인 문제

get "home/index" 

constraints :subdomain => 'store' do 
    mount Spree::Core::Engine, :at => '/' 
end 

root :to => 'home#index' 

나는 완전히 잘못 될 수 있지만 지금까지는 작동 중입니다.

+0

foo.com 및 www.foo.com에서 내 도메인 foo.com에 액세스하려면 어떻게해야합니까? 위의 변경으로 인해 foo.com에서 콘텐츠를로드 할 수 없습니다. – jkndrkn

+0

위의 @samuelkobe 대답을 참조하십시오. –

+0

subdomain에서 정규식을 사용할 수 있습니까? 예 : 범위 : subdomain =>/^ $ | www/do ... –

5

나는 또한 WWW을 피하고 로컬로 작동하는 다른 솔루션에 온 1.9.3-194 루비 :

+0

매우 유용합니다! mount 지시문은'mount Spree :: Core :: Engine => '/' – Epigene