Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/62.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 在登录后设计重定向_Ruby On Rails_Ruby_Devise_Activeadmin_Omniauth Facebook - Fatal编程技术网

Ruby on rails 在登录后设计重定向

Ruby on rails 在登录后设计重定向,ruby-on-rails,ruby,devise,activeadmin,omniauth-facebook,Ruby On Rails,Ruby,Devise,Activeadmin,Omniauth Facebook,各位,我正在将Desive与我的rails 4应用程序、omniauth facebook和active admin一起使用。 当我尝试完全从登录页面登录时,在身份验证过程之后,页面只是刷新(不根据需要重定向到根路径)。但是,当我从另一个页面获取sing-in页面(也需要身份验证)时,它工作正常(例如重定向到admin页面)。只有当我尝试从登录页面登录时,才会出现此问题。 我已经尝试了许多覆盖解决方案,但仍然不起作用。 如果有帮助的话,我正在使用activeadmin身份验证,就像默认的Devi

各位,我正在将Desive与我的rails 4应用程序、omniauth facebook和active admin一起使用。 当我尝试完全从登录页面登录时,在身份验证过程之后,页面只是刷新(不根据需要重定向到根路径)。但是,当我从另一个页面获取sing-in页面(也需要身份验证)时,它工作正常(例如重定向到admin页面)。只有当我尝试从登录页面登录时,才会出现此问题。 我已经尝试了许多覆盖解决方案,但仍然不起作用。 如果有帮助的话,我正在使用activeadmin身份验证,就像默认的Deviate身份验证一样,我的意思是:

 def authenticate_admin_user!
   redirect_to root_path and return if user_signed_in? && !current_user.is_admin
   authenticate_user!
 end
尝试以下操作(返回非平凡):


这个方法工作得很好,当我试图直接从Sing-in页面登录(而不是从admin或其他页面重定向到sign-in页面)时,我遇到了一个问题。然后我将刷新/users/sing_插入,而不是重定向到root_路径
def authenticate_admin_user!
 if user_signed_in? && !current_user.is_admin
   redirect_to root_path
 else 
   authenticate_user!
  end
end