9

我看过 railscast http://railscasts.com/episodes/236-omniauth-part-2

并尝试实现代码,一切在开发环境中运行良好。当我使用 rails s -e production 执行时,出现以下错误

omn​​iauth_callbacks_controller.rb:1: 未初始化的常量 Devise::OmniauthCallbacksController (NameError)

导致错误的代码片段在这里

类用户::OmniauthCallbacksController < 设计::OmniauthCallbacksController

我的宝石文件


gem 'aws-s3'
gem 'paperclip'
gem 'rails', '3.0.0'
gem 'pg'
gem 'gravatar_image_tag', '0.1.0'
gem 'will_paginate', '3.0.pre2'
gem 'devise'
gem 'omniauth'
gem 'nifty-generators'

我的 Gemfile.lock 文件(只是相关的)


    devise (1.1.5)
      bcrypt-ruby (~> 2.1.2)
      warden (~> 1.0.2)

    nokogiri (1.4.4)
    oa-basic (0.1.6)
      multi_json (~> 0.0.2)
      nokogiri (~> 1.4.2)
      oa-core (= 0.1.6)
      rest-client (~> 1.6.0)
    oa-core (0.1.6)
      rack (~> 1.1)
    oa-enterprise (0.1.6)
      net-ldap (~> 0.1.1)
      nokogiri (~> 1.4.2)
      oa-core (= 0.1.6)
      pyu-ruby-sasl (~> 0.0.3.1)
      rubyntlm (~> 0.1.1)
    oa-oauth (0.1.6)
      multi_json (~> 0.0.2)
      nokogiri (~> 1.4.2)
      oa-core (= 0.1.6)
      oauth (~> 0.4.0)
      oauth2 (~> 0.1.0)
    oa-openid (0.1.6)
      oa-core (= 0.1.6)
      rack-openid (~> 1.2.0)
      ruby-openid-apps-discovery
    oauth (0.4.4)
    oauth2 (0.1.0)
      faraday (~> 0.5.0)
      multi_json (~> 0.0.4)
    omniauth (0.1.6)
      oa-basic (= 0.1.6)
      oa-core (= 0.1.6)
      oa-enterprise (= 0.1.6)
      oa-oauth (= 0.1.6)
      oa-openid (= 0.1.6)

我的 development.rb 文件


SampleApp::Application.configure do
  config.cache_classes = false
  config.whiny_nils = true
  config.consider_all_requests_local       = true
  config.action_view.debug_rjs             = true
  config.action_controller.perform_caching = false
  config.action_mailer.raise_delivery_errors = false
  config.active_support.deprecation = :log
  config.action_dispatch.best_standards_support = :builtin
  config.action_mailer.default_url_options = { :host => 'localhost:3000' }
end

我的 production.rb 文件


SampleApp::Application.configure do
  config.cache_classes = true
  config.consider_all_requests_local       = false
  config.action_controller.perform_caching = true
  config.action_dispatch.x_sendfile_header = "X-Sendfile"
  config.serve_static_assets = false
  config.i18n.fallbacks = true
  config.active_support.deprecation = :notify
end

任何人都可以帮忙吗?

4

2 回答 2

5

在设计 1.2 中,它支持直接与 OmniAuth 集成。

检查OmniAuth 的设计 wiki

于 2010-12-20T05:22:38.060 回答
1

你的 Gemfile 是什么样的?您是否将 gem 'omniauth' 声明粘贴在 :development 组中?

于 2010-11-28T02:59:47.070 回答