2016-10-31 2 views
0

У меня есть приложение с субдоменами для разных людей, которые все используют один и тот же домен (т. Е. www.liz.domain.com, www.anthony.domain.com и т. Д.). Мне нужно создать ссылки из одного поддомена в основной домен и обратно, но не могу понять, как заставить его работать. Мои маршруты стоять так:Рельсы: привязка от субдомена к основному домену и обратно

Rails.application.routes.draw do 
    constraints subdomain: 'liz' do 
     scope module: 'liz', as: 'liz' do 
      get 'home/index' 
      root 'home#index' 
      resources :inquiries 
      get 'services/hire' 
      get 'services/dev' 
      get 'services/design' 
      get 'services/branding' 
      get 'services/portfolio' 
     end 
    end 

    constraints subdomain: 'anthony' do 
     scope module: 'anthony', as: 'anthony' do 
      get 'home/index' 
      root 'home#index' 
     end 
    end 

    get 'home/index' 
    root 'home#index' 
end 

И когда я rake routes получается, как это:

   Prefix Verb URI Pattern     Controller#Action 
     liz_home_index GET /home/index(.:format)   liz/home#index {:subdomain=>"liz"} 
       liz_root GET /       liz/home#index {:subdomain=>"liz"} 
     liz_inquiries GET /inquiries(.:format)   liz/inquiries#index {:subdomain=>"liz"} 
         POST /inquiries(.:format)   liz/inquiries#create {:subdomain=>"liz"} 
     new_liz_inquiry GET /inquiries/new(.:format)  liz/inquiries#new {:subdomain=>"liz"} 
     edit_liz_inquiry GET /inquiries/:id/edit(.:format) liz/inquiries#edit {:subdomain=>"liz"} 
      liz_inquiry GET /inquiries/:id(.:format)  liz/inquiries#show {:subdomain=>"liz"} 
         PATCH /inquiries/:id(.:format)  liz/inquiries#update {:subdomain=>"liz"} 
         PUT /inquiries/:id(.:format)  liz/inquiries#update {:subdomain=>"liz"} 
         DELETE /inquiries/:id(.:format)  liz/inquiries#destroy {:subdomain=>"liz"} 
    liz_services_hire GET /services/hire(.:format)  liz/services#hire {:subdomain=>"liz"} 
     liz_services_dev GET /services/dev(.:format)  liz/services#dev {:subdomain=>"liz"} 
    liz_services_design GET /services/design(.:format) liz/services#design {:subdomain=>"liz"} 
liz_services_branding GET /services/branding(.:format) liz/services#branding {:subdomain=>"liz"} 
liz_services_portfolio GET /services/portfolio(.:format) liz/services#portfolio {:subdomain=>"liz"} 
    anthony_home_index GET /home/index(.:format)   anthony/home#index {:subdomain=>"anthony"} 
      anthony_root GET /       anthony/home#index {:subdomain=>"anthony"} 
      home_index GET /home/index(.:format)   home#index 
        root GET /       home#index 

Я попытался с помощью <%= link_to "Liz's Page", liz_root_path(subdomain: 'liz') %> или <%= link_to "Liz's Page", liz_root_path %> из основного домена (без поддомена), но ни ссылки на субдомен.

Аналогично, я пробовал <%= link_to "Main Page", root_path %> со страницы внутри субдомена, и он просто ссылается на дом поддомена, а не на корень сайта.

Может ли кто-нибудь выправить меня из-за того, как соединяться между субдоменами/основными доменами?

ответ

0

Я в конечном итоге сменил их с path на url, чтобы решить эту проблему.

Этот способ <%= link_to "Liz's Page", liz_root_path(subdomain: 'liz')% стал <%= link_to "Liz's Page", liz_root_url(subdomain: 'liz') %> и работал отлично.

+0

А как насчет спины? Когда внутри субдомена liz, как подключиться к домену? –

Смежные вопросы