【问题标题】:rake migration aborted: error with uninitialized constant and migration namingrake 迁移中止:未初始化的常量和迁移命名错误
【发布时间】:2013-06-05 20:22:13
【问题描述】:

我已经通过 stackoverflow 进行了搜索,但没有发现类似的问题。我正在尝试在现有的 Slicks 表中添加一列。应该很容易,但我要把头发拉出来! 我可能没有将 rails 命令命名为迁移不够好: rails generate migration AddNametoSlicks name:string

还有: 1.)此命令生成此迁移 20130605194117_add_nameto_slicks.rb 没有 _ 看起来不正确。我将迁移的名称更改为 add_name_to_slicks.rb

2.) 迁移命令未生成 add_column。我在命令中缺少什么?

这是迁移文件:

class AddNametoSlicks < ActiveRecord::Migration
  def change
    add_column :slicks, :name, :string
  end
end

来自终端的错误:

rake aborted!
An error has occurred, this and all later migrations canceled:

uninitialized constant AddNameToSlicks/usr/local/rvm/gems/ruby-1.9.3-p194@gigbase/gems/activesupport-3.2.12/lib/active_su
pport/inflector/methods.rb:230:in `block in constantize'
/usr/local/rvm/gems/ruby-1.9.3-p194@gigbase/gems/activesupport-3.2.12/lib/active_support/inflector/methods.rb:229:in `eac
h'
/usr/local/rvm/gems/ruby-1.9.3-p194@gigbase/gems/activesupport-3.2.12/lib/active_support/inflector/methods.rb:229:in `con
stantize'
/usr/local/rvm/gems/ruby-1.9.3-p194@gigbase/gems/activesupport-3.2.12/lib/active_support/core_ext/string/inflections.rb:5
4:in `constantize'
/usr/local/rvm/gems/ruby-1.9.3-p194@gigbase/gems/activerecord-3.2.12/lib/active_record/migration.rb:538:in `load_migratio
n'
/usr/local/rvm/gems/ruby-1.9.3-p194@gigbase/gems/activerecord-3.2.12/lib/active_record/migration.rb:533:in `migration'
/usr/local/rvm/gems/ruby-1.9.3-p194@gigbase/gems/activerecord-3.2.12/lib/active_record/migration.rb:528:in `migrate'
/usr/local/rvm/gems/ruby-1.9.3-p194@gigbase/gems/activerecord-3.2.12/lib/active_record/migration.rb:720:in `block (2 leve
ls) in migrate'
/usr/local/rvm/gems/ruby-1.9.3-p194@gigbase/gems/activerecord-3.2.12/lib/active_record/migration.rb:775:in `call'
/usr/local/rvm/gems/ruby-1.9.3-p194@gigbase/gems/activerecord-3.2.12/lib/active_record/migration.rb:775:in `block in ddl_
transaction'
/usr/local/rvm/gems/ruby-1.9.3-p194@gigbase/gems/activerecord-3.2.12/lib/active_record/connection_adapters/abstract/datab
ase_statements.rb:192:in `transaction'
/usr/local/rvm/gems/ruby-1.9.3-p194@gigbase/gems/activerecord-3.2.12/lib/active_record/transactions.rb:208:in `transactio
n'
/usr/local/rvm/gems/ruby-1.9.3-p194@gigbase/gems/activerecord-3.2.12/lib/active_record/migration.rb:775:in `ddl_transacti
on'
/usr/local/rvm/gems/ruby-1.9.3-p194@gigbase/gems/activerecord-3.2.12/lib/active_record/migration.rb:719:in `block in migr
ate'
/usr/local/rvm/gems/ruby-1.9.3-p194@gigbase/gems/activerecord-3.2.12/lib/active_record/migration.rb:700:in `each'
/usr/local/rvm/gems/ruby-1.9.3-p194@gigbase/gems/activerecord-3.2.12/lib/active_record/migration.rb:700:in `migrate'
/usr/local/rvm/gems/ruby-1.9.3-p194@gigbase/gems/activerecord-3.2.12/lib/active_record/migration.rb:570:in `up'
/usr/local/rvm/gems/ruby-1.9.3-p194@gigbase/gems/activerecord-3.2.12/lib/active_record/migration.rb:551:in `migrate'
/usr/local/rvm/gems/ruby-1.9.3-p194@gigbase/gems/activerecord-3.2.12/lib/active_record/railties/databases.rake:179:in `bl
ock (2 levels) in <top (required)>'
/usr/local/rvm/gems/ruby-1.9.3-p194@gigbase/gems/rake-10.0.4/lib/rake/task.rb:246:in `call'
/usr/local/rvm/gems/ruby-1.9.3-p194@gigbase/gems/rake-10.0.4/lib/rake/task.rb:246:in `block in execute'
/usr/local/rvm/gems/ruby-1.9.3-p194@gigbase/gems/rake-10.0.4/lib/rake/task.rb:241:in `each'
/usr/local/rvm/gems/ruby-1.9.3-p194@gigbase/gems/rake-10.0.4/lib/rake/task.rb:241:in `execute'
/usr/local/rvm/gems/ruby-1.9.3-p194@gigbase/gems/rake-10.0.4/lib/rake/task.rb:184:in `block in invoke_with_call_chain'
/usr/local/rvm/gems/ruby-1.9.3-p194@gigbase/gems/rake-10.0.4/lib/rake/task.rb:177:in `invoke_with_call_chain'
/usr/local/rvm/gems/ruby-1.9.3-p194@gigbase/gems/rake-10.0.4/lib/rake/task.rb:170:in `invoke'
/usr/local/rvm/gems/ruby-1.9.3-p194@gigbase/gems/rake-10.0.4/lib/rake/application.rb:143:in `invoke_task'
/usr/local/rvm/gems/ruby-1.9.3-p194@gigbase/gems/rake-10.0.4/lib/rake/application.rb:101:in `block (2 levels) in top_leve
l'
/usr/local/rvm/gems/ruby-1.9.3-p194@gigbase/gems/rake-10.0.4/lib/rake/application.rb:101:in `each'
/usr/local/rvm/gems/ruby-1.9.3-p194@gigbase/gems/rake-10.0.4/lib/rake/application.rb:101:in `block in top_level'
/usr/local/rvm/gems/ruby-1.9.3-p194@gigbase/gems/rake-10.0.4/lib/rake/application.rb:110:in `run_with_threads'
/usr/local/rvm/gems/ruby-1.9.3-p194@gigbase/gems/rake-10.0.4/lib/rake/application.rb:95:in `top_level'
/usr/local/rvm/gems/ruby-1.9.3-p194@gigbase/gems/rake-10.0.4/lib/rake/application.rb:73:in `block in run'
/usr/local/rvm/gems/ruby-1.9.3-p194@gigbase/gems/rake-10.0.4/lib/rake/application.rb:160:in `standard_exception_handling'
/usr/local/rvm/gems/ruby-1.9.3-p194@gigbase/gems/rake-10.0.4/lib/rake/application.rb:70:in `run'
Tasks: TOP => db:migrate

【问题讨论】:

    标签: ruby-on-rails-3 migration rake


    【解决方案1】:

    正在请求 AddNameToSlicks,但您有 AddNametoSlicks。

    更改为 - 到

    【讨论】:

    • 超级!谢谢你抓住那个。它起作用了 - 该列已添加到 schema.rb 中。我会尽量喜欢你的评论,但由于我是新人,它一直没有让我!
    猜你喜欢
    • 1970-01-01
    • 2013-07-20
    • 1970-01-01
    • 1970-01-01
    • 2012-07-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-28
    相关资源
    最近更新 更多