Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/60.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 教程(omniauth twitter)后出现意外结果:没有与[GET]匹配的路由/auth/twitter";_Ruby On Rails_Ruby_Gem_Omniauth - Fatal编程技术网

Ruby on rails 教程(omniauth twitter)后出现意外结果:没有与[GET]匹配的路由/auth/twitter";

Ruby on rails 教程(omniauth twitter)后出现意外结果:没有与[GET]匹配的路由/auth/twitter";,ruby-on-rails,ruby,gem,omniauth,Ruby On Rails,Ruby,Gem,Omniauth,我一步一步地遵循这个指南: 当我点击twitter上的按钮时,结果是: 没有与[GET]“/auth/twitter”匹配的路由 我做了​​几次尝试,以慢动作观看视频。。。但是结果总是一样的以后,尝试共享相关代码以进行调试。但是,请确保您具有以下内容 在你的路线上,确保你有 devise_for :users, :controllers => {:omniauth_callbacks => "users/omniauth_callbacks" ... 在你的语言中,设计初始值设定项

我一步一步地遵循这个指南:

当我点击twitter上的按钮时,结果是:

没有与[GET]“/auth/twitter”匹配的路由


我做了​​几次尝试,以慢动作观看视频。。。但是结果总是一样的

以后,尝试共享相关代码以进行调试。但是,请确保您具有以下内容

在你的路线上,确保你有

devise_for :users, :controllers => {:omniauth_callbacks => "users/omniauth_callbacks" ...
在你的语言中,设计初始值设定项

config.omniauth :facebook, facebook_app_id, facebook_app_secret,
     { :scope => 'yourscopeshere', :client_options => {:ssl => {:ca_path => "/etc/ssl/certs"}} }

您需要注释掉Desive gem使用的模型中的“:omniauthable”(通常是模型“User”=User.rb文件):

class用户

使用“:omniauthable”调用意味着加载designe/omniauth组件(这会与您的omniauth设置冲突)。

那么,您需要为该“路径”创建一个路由,您是否确定您编写的任何代码都会为GET方法生成路由?另外,如果您提供了一些代码片段,那就太好了。老实说,我不想看整个视频(您的config/routes.rb文件中是否有此项?匹配“/auth/:provider/callback”=>“会话”#创建”@并带有点。-在页面上搜索“路由”
class User < ActiveRecord::Base
  devise :database_authenticatable, :registerable, :recoverable,
         :rememberable, :trackable, :validatable # plus whatever other calls...
       # :omniauthable

  [...]

end