Я использую devise gem в приложении rails с несколькими поддоменами. Каждый поддомен обрабатывается соответствующим контроллером, который выглядит следующим образом:
class Subdomain1Controller < ApplicationController
before_filter :authenticate_user!
def index
end
end
При вышеуказанной реализации контроллера, Devise всегда сохраняет поддомен при перенаправлении пользователя на страницу входа. В приведенном выше случае Devise перенаправляет пользователя на http://subdomain1.acmesite/users/sign_in вместо общего URL sign_in.
Это приводит к тому, что у каждого субдомена есть несколько адресов входа в систему.
http://subdomain1.acmesite/users/sign_in
http://subdomain2.acmesite/users/sign_in
http://subdomain3.acmesite/users/sign_in
Мне интересно, возможно ли переопределить метод devise, чтобы исключить часть поддомена из url и при этом сохранить информацию о предыдущей странице url. Более того, я хочу, чтобы Devise перенаправлял пользователя на определенный Url (например: http://acmesite/users/sign_in) независимо от поддомена и после успешной аутентификации Devise должен возвращать пользователя обратно на вызывающий поддомен+страницу.