会话超时后,浏览器URL不会更改(Rails / Devise)

时间:2014-06-18 16:16:36

标签: ruby-on-rails devise

这是一个基于this one that I had的更一般的问题(我意识到我所遇到的问题可能与我所遇到的特定问题无关(或者甚至可能与Devise相关)所以我认为我会尝试改写它。

基本上,如果用户打开了同一会话的多个选项卡并且他们注销了,那么他们可能会转到另一个选项卡中的其他位置,并且会将他们带到登录页面,因为他们的会话刚被杀死。问题似乎是浏览器网址没有更改为正确的用户登录网址。相反,url与用户刚刚尝试访问的URL相同。因此,当用户输入其凭据并点击登录提交按钮时,没有任何反应。

我认为这是因为登录页面正在呈现而不是重定向。如果我刷新页面,网址将更改为应该是什么,我可以按照正常情况登录。

如果有帮助,以下是我的路线:

  devise_scope :user do
    authenticated :user do 
      root to: "users#dashBoard", as: :authenticated_root, foo: 'dashBoard'
    end

    unauthenticated :user do
        root to: "devise/sessions#new"
    end
  end

1 个答案:

答案 0 :(得分:0)

答案就在我面前。我从应用程序中删除了Turbolinks并修复了问题。基本上,由于Turbolinks,它只是渲染页面而不实际重新加载任何东西(javascript文件等)。