0

我正在尝试向注册提供电子邮件和密码或使用 Facebook。

我试过使用https://github.com/plataformatec/devise/wiki/OmniAuth%3a-Overview

我遵循了每个步骤,但是当我尝试运行 rails server 时,我在终端中遇到了以下错误:

'users/omniauth.callbacks' 不是受支持的控制器名称

我认为这是指我被指示制作的文件(app/controllers/users/omniauth_callback_controllers.rb),但删除该文件没有任何作用。我已经实现了设计,并且还安装了 Omniauth gem。我做错了什么?

我采取的步骤:

  1. 将 gem omniauth-facebook添加到我的 Gemfile
  2. 在终端中安装捆绑
  3. Ran rails g 迁移 AddColumnsToUsers 提供者 uid
  4. 运行 rake db:migrate
  5. 将行config.omniauth :facebook, "APP_ID", "APP_SECRET"添加到文件 config/initializers/devise.rb
  6. 使用<%= link_to "Sign In With Facebooks", user_omniauth_authorize_path(:facebook %>
  7. 在 config/routes.rb 文件中添加了devise_for :users, :controllers => { :omniauth_callbacks => "users/omniauth_callbacks}行
  8. (我感到困惑的部分)添加了一个新文件夹、用户和一个新文件omniauth_callbacks_controller.rb(文件路径是app/controllers/users/omniauth_callbacks_controller.rb)并包含代码(参见Imgur链接)
  9. 在 app/models/user.rb 文件中添加了代码(参见 Imgur 链接)

http://imgur.com/a/TyVoK

4

0 回答 0