0
我有一个子域的应用程序。当用户登录到根域时。我想将他/她重定向到他/她的公司子域。我正在使用设计。redirect_to与轨道参数
这是我迄今为止
def create
subdomain = request.subdomain
user = User.find_by_email(params[:user][:email])
if subdomain.present?
resource = warden.authenticate!(auth_options)
set_flash_message(:notice, :signed_in) if is_navigational_format?
sign_in(resource_name, resource)
redirect_to statistics_url
else
redirect_to sign_in_at_subdomain_url(:subdomain => user.firm.subdomain), :params => params
end
end
def sign_in_at_subdomain
resource = warden.authenticate!(auth_options)
set_flash_message(:notice, :signed_in) if is_navigational_format?
sign_in(resource_name, resource)
redirect_to statistics_url
end
当用户登录低谷登录表单,则params被发送到创建动作,即设计用于验证身份。正如你在我的代码中看到的那样,当一个子域出现时,登录工作得很好,但是当它不存在时,我想要重定向到子域和sign_in_at_subdomain。
如何将parmas表单通过创建操作传递给sign_in_at_subdomain操作?
我用这种方法,但我不喜欢它。它将令牌存储在user.loginable_token下的数据库中。当它进入valid_user_url时,它从数据库中提取用户并将其登录到当前子域中。这似乎很复杂。我只是想通过参数表单登录表单。 – 2012-03-01 10:30:49
这是我结束的解决方案。这是最好的。 – 2012-10-15 18:24:30