Я не знаю, как у вас настроены ваши субдомены, но у вас должен быть какой-то код, который где-то выглядит следующим образом:
def current_account
Account.find_by_subdomain(request.subdomain) || Account.find_by_custom_domain(request.host)
end
Этот код является лишь подтверждением концепции.Вы должны убедиться, что вы: а) защитите людей от кражи доменов друг друга (проверка уникальности по параметру custom_domain) и б) убедитесь, что они не вводят ваш домен в поле custom_domain, позволяя им иметь несколько "локальных" доменов.
Редактировать: вы также должны убедиться, что, если на контроллере определен метод current account
, вы запомните его с помощью @current_account ||=
, чтобы избежать ненужных обращений к базе данных.