2013-06-05 50 views
3

我已通過stackoverflow搜索並沒有看到類似的問題。我正在嘗試在現有的Slicks表中添加一列。應該很容易,但我拉我的頭髮! 我可能還沒有命名的rails命令遷移不夠好:導軌產生遷移AddNametoSlicks名稱:字符串rake遷移中止:未初始化的常量和遷移命名出錯

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

回答

7

AddNameToSlicks但你必須AddNametoSlicks。

更改爲 - 去

+0

超級!感謝您的支持。它工作 - 該列被添加到schema.rb。我會盡量喜歡你的評論,但因爲我是新人,所以一直沒有放過我! – PatrickLightning