顶级域cookie掩盖了Devise中的子域cookie

时间:2012-10-04 05:36:43

标签: ruby-on-rails ruby devise

登录后,它会转到正确的网址(带有匹配的子网域),但我仍然会看到“注册”或“登录”而不是“以xxx登录”和“注销”,这意味着{ {1}}返回false(未设置current_user)。

这是application_controller.rb:

user_signed_in?

private def after_sign_in_path_for(resource) logger.info root_url(subdomain: current_user.username) logger.info user_signed_in? root_url(subdomain: current_user.username) end 在此处返回user_signed_in?

重定向到的home_controller.rb:

true

def show logger.info user_signed_in? @user = User.find_by_username!(request.subdomain) end 此处返回user_signed_in?

路线档案:

false

正如Arun在评论中所说,问题,我发现有2个同名的cookie,但是一个用于顶级域,另一个用于子域。

有没有办法只删除一个cookie或根本不设置它?我尝试了constraints(Subdomain) do match '/' => 'home#show', as: :user end root :to => 'home#welcome' ,但它删除了两个Cookie。

0 个答案:

没有答案