首页 > 解决方案 > 如何将 rails devise sign_in 路径设置为根 url

问题描述

devise_for :admins, path: 'admins' 
devise_scope :admin do
  root to: "devise/sessions#new"
end
http://localhost:3000/

当我刚刚输入上面的 url 时,我想重定向 admins/sign_in 路径,登录页面有时会打开,但每次点击登录按钮后,我都会收到此错误并且没有登录。如何解决这个问题?

错误:

过滤器链因 :require_no_authentication 呈现或重定向而停止

标签: ruby-on-railsrubydeviserubygems

解决方案


看起来您正在尝试再次登录同一用户而无需注销

devise_for :admins, path: 'admins' 

devise_scope :admin do
  authenticated :admin do
    root 'home#index', as: :authenticated_root
  end

  unauthenticated do
    root 'devise/sessions#new', as: :unauthenticated_root
  end
end

推荐阅读