【问题标题】:Rails Devise generate errorRails 设计生成错误
【发布时间】:2012-06-13 13:26:57
【问题描述】:

我对 Rails 很陌生,我正在尝试设置设计和omniauth,以允许用户使用 Facebook API 登录我的网站。我正在使用本教程http://www.ruby-on-rails-outsourcing.com/articles/2012/01/20/adding-facebook-auth-to-rails-3-1-app/ 来执行此操作。但是,当我尝试运行 rails generate devise User 时,我收到此错误:undefined local variable or method config for main:Object (NameError)。我该如何解决这个问题?

devise.rb 文件:

Devise.setup do |config|
  config.mailer_sender = "please-change-me-at-config-initializers-devise@example.com" 
  require 'devise/orm/active_record'
  config.case_insensitive_keys = [ :email ]
  config.strip_whitespace_keys = [ :email ]
  config.skip_session_storage = [:http_auth]
  config.stretches = Rails.env.test? ? 1 : 10
  config.reconfirmable = true
  config.reset_password_within = 6.hours
  config.sign_out_via = :delete

开发.rb:

*******::Application.configure do
  config.action_mailer.default_url_options = { :host => 'localhost:3000' }
  config.cache_classes = false
  config.whiny_nils = true
  config.consider_all_requests_local       = 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.active_record.mass_assignment_sanitizer = :strict
  config.active_record.auto_explain_threshold_in_seconds = 0.5
  config.assets.compress = false
  config.assets.debug = true
end

【问题讨论】:

  • 正确的命令是rails generate devise User 我不确定您是否因此而收到错误,但您可以尝试
  • 抱歉,编辑了我的问题 - 我使用了正确的命令。
  • 请粘贴您的 devise.rb 文件,它可能在该文件中存在问题,因为它无法在那里找到配置
  • 您使用的是哪个版本的设计?
  • 有谁知道是什么原因造成的?我好像遇到了同样的问题

标签: ruby-on-rails devise rails-generate


【解决方案1】:

我遇到了完全相同的问题。 cmets 中的 abhas 帮助我走上了正轨!

我将config.assets.initialize_on_precompile = false 放在Module ApplicationName 块之外的config/Application.rb 文件夹中。我将该配置行放在 Module 块中,一切都开始运行良好!

module VitogoWeb2
  class Application < Rails::Application

    # A devise setting to prevent Heroku from accessing the DB or load models when precompiling the assets.
    config.assets.initialize_on_precompile = false

  end
end

【讨论】:

    猜你喜欢
    • 2013-06-12
    • 1970-01-01
    • 2012-01-07
    • 2023-03-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多