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 使用OAuth和Rails的注销路由_Ruby On Rails_Ruby_Routing - Fatal编程技术网

Ruby on rails 使用OAuth和Rails的注销路由

Ruby on rails 使用OAuth和Rails的注销路由,ruby-on-rails,ruby,routing,Ruby On Rails,Ruby,Routing,我正在使用OAuth 2 gem通过google和facebook进行身份验证。 当我从应用程序注销时,我需要从谷歌和facebook注销。在OA文件中说: devise_scope :user do delete 'sign_out', to: 'devise/sessions#destroy', as: :destroy_user_session end 将此添加到routes.rb。我这样做了,我的溃败rb现在看起来像: Rails.application.routes.draw do

我正在使用OAuth 2 gem通过google和facebook进行身份验证。 当我从应用程序注销时,我需要从谷歌和facebook注销。在OA文件中说:

devise_scope :user do
delete 'sign_out', to: 'devise/sessions#destroy', as: :destroy_user_session
end
将此添加到routes.rb。我这样做了,我的溃败rb现在看起来像:

Rails.application.routes.draw do
  devise_for :users, controllers: { omniauth_callbacks: 'callbacks' }
  devise_scope :user do
    delete 'sign_out', to: 'devise/sessions#destroy', as: :destroy_user_session
  end
当我添加这一行时,我在尝试删除我的应用程序时出错:

/Users/damirik/.rvm/gems/ruby-2.3.0/gems/actionpack-5.0.0.1/lib/action\u dispatch/routing/route\u set.rb:507:in
add\u route]:路由名称无效,已在使用:“destroy\u user\u session”(ArgumentError)
您可能已使用
:as`选项定义了两条同名路由,或者您可能正在覆盖已由同名资源定义的路由

我真的不知道怎么修理它。请帮助查看方法文档,我可以看到它已经添加了确切的
删除“注销”
路由,这使得它变得多余

这应该足以使您的代码正常工作

Rails.application.routes.draw do
  devise_for :users, controllers: { omniauth_callbacks: 'callbacks' }
end

您是否检查过rake routes中的一切是否正常?