【问题标题】:NameError: uninitialized constant in rails consoleNameError:rails 控制台中未初始化的常量
【发布时间】:2012-11-24 20:01:31
【问题描述】:

我正在向我的数据库中添加一个“问题”表......当我迁移它时......一切似乎都很好。 但是当我进入 Rails 控制台时......它告诉我'NameError: uninitialized constant Question'

我错过了什么?这是我的迁移输出、迁移文件数据和 rails 控制台错误。

我是 Rails 的初学者,所以请原谅我的菜鸟。

所以我在 rake db:migrate 之后得到了这个...

    Zach:FundAnEd zach$ rake db:migrate 
    ==  DropQuestionTable: migrating ==============================================
    -- drop_table(:questions)
       -> 0.0490s
    ==  DropQuestionTable: migrated (0.0492s) =====================================

    ==  CreateQuestions: migrating ================================================
    -- create_table(:questions)
       -> 0.0161s
    -- add_index(:questions, :scholarship_id)
       -> 0.0254s
    ==  CreateQuestions: migrated (0.0417s) =======================================

这是我的迁移文件内容...

    class CreateQuestions < ActiveRecord::Migration
      def change
        create_table :questions do |t|
          t.string :question_type
          t.references :scholarship
          t.string :question_title

          t.timestamps
        end
        add_index :questions, :scholarship_id
      end
    end

这是我遇到的错误......

    NameError: uninitialized constant Question
        from (irb):1
        from /Users/zach/.rvm/gems/ruby-1.9.3-p286/gems/railties-3.2.8/lib/rails/commands/console.rb:47:in `start'
        from /Users/zach/.rvm/gems/ruby-1.9.3-p286/gems/railties-3.2.8/lib/rails/commands/console.rb:8:in `start'
        from /Users/zach/.rvm/gems/ruby-1.9.3-p286/gems/railties-3.2.8/lib/rails/commands.rb:41:in `<top (required)>'
        from script/rails:6:in `require'
        from script/rails:6:in `<main>'

我做错了什么?我错过了什么?

【问题讨论】:

  • 您有问题模型吗?如果是,请包括其代码。
  • 出现错误前你会做什么?

标签: ruby-on-rails ruby rake


【解决方案1】:

首先你必须确保你有一个 Question 模型,如果你有它,那么请确保你遵循了正确的命名约定,ruby on rails 中的模型是单数的,这意味着模型名称将是“Question”而不是“问题”。希望对您有所帮助

【讨论】:

  • 谢谢。我明白了
  • 如果它解决了您的问题,您可以接受答案,谢谢
  • 你能说一下,你发现了什么?我也有同样的问题。
  • 我遇到了同样的问题,因为我没有定义相应的模型。这个答案让我正确。
猜你喜欢
  • 2016-04-24
  • 1970-01-01
  • 1970-01-01
  • 2017-01-19
  • 2013-11-18
  • 1970-01-01
  • 2018-03-27
  • 2017-06-02
  • 1970-01-01
相关资源
最近更新 更多