2012-12-01 79 views
-1

我剛剛重新安裝了我的Ubuntu,所以我安裝了Ribu和Rails。一切都很順利,但是當我試圖建立一個模型(數據庫表)時,出現了一些錯誤。 這裏的錯誤,不留痕跡:無法進行遷移

[email protected]:~/pro$ rake db:migrate 
== CreateMonsters: migrating ================================================= 
-- create_table(:monsters) 
rake aborted! 
An error has occurred, this and all later migrations canceled: 

undefined method `straing' for #<ActiveRecord::ConnectionAdapters::TableDefinition:0x000000023cae90> 
/home/cdr/pro/db/migrate/20121201195505_create_monsters.rb:4:in `block in change' 
/home/cdr/pro/db/migrate/20121201195505_create_monsters.rb:3:in `change' 
Tasks: TOP => db:migrate 
(See full trace by running task with --trace) 

這是跟蹤:

[email protected]:~/pro$ rake db:migrate --trace 
** Invoke db:migrate (first_time) 
** Invoke environment (first_time) 
** Execute environment 
** Invoke db:load_config (first_time) 
** Execute db:load_config 
** Execute db:migrate 
== CreateMonsters: migrating ================================================= 
-- create_table(:monsters) 
rake aborted! 
An error has occurred, this and all later migrations canceled: 

undefined method `straing' for #<ActiveRecord::ConnectionAdapters::TableDefinition:0x00000003f4c3d0> 
/home/cdr/pro/db/migrate/20121201195505_create_monsters.rb:4:in `block in change' 
/usr/lib/ruby/gems/1.9.1/gems/activerecord-3.2.9/lib/active_record/connection_adapters/abstract/schema_statements.rb:160:in `create_table' 
/usr/lib/ruby/gems/1.9.1/gems/activerecord-3.2.9/lib/active_record/migration.rb:466:in `block in method_missing' 
/usr/lib/ruby/gems/1.9.1/gems/activerecord-3.2.9/lib/active_record/migration.rb:438:in `block in say_with_time' 
/usr/lib/ruby/1.9.1/benchmark.rb:280:in `measure' 
/usr/lib/ruby/gems/1.9.1/gems/activerecord-3.2.9/lib/active_record/migration.rb:438:in `say_with_time' 
/usr/lib/ruby/gems/1.9.1/gems/activerecord-3.2.9/lib/active_record/migration.rb:458:in `method_missing' 
/home/cdr/pro/db/migrate/20121201195505_create_monsters.rb:3:in `change' 
/usr/lib/ruby/gems/1.9.1/gems/activerecord-3.2.9/lib/active_record/migration.rb:407:in `block (2 levels) in migrate' 
/usr/lib/ruby/1.9.1/benchmark.rb:280:in `measure' 
/usr/lib/ruby/gems/1.9.1/gems/activerecord-3.2.9/lib/active_record/migration.rb:407:in `block in migrate' 
/usr/lib/ruby/gems/1.9.1/gems/activerecord-3.2.9/lib/active_record/connection_adapters/abstract/connection_pool.rb:129:in `with_connection' 
/usr/lib/ruby/gems/1.9.1/gems/activerecord-3.2.9/lib/active_record/migration.rb:389:in `migrate' 
/usr/lib/ruby/gems/1.9.1/gems/activerecord-3.2.9/lib/active_record/migration.rb:528:in `migrate' 
/usr/lib/ruby/gems/1.9.1/gems/activerecord-3.2.9/lib/active_record/migration.rb:720:in `block (2 levels) in migrate' 
/usr/lib/ruby/gems/1.9.1/gems/activerecord-3.2.9/lib/active_record/migration.rb:775:in `call' 
/usr/lib/ruby/gems/1.9.1/gems/activerecord-3.2.9/lib/active_record/migration.rb:775:in `block in ddl_transaction' 
/usr/lib/ruby/gems/1.9.1/gems/activerecord-3.2.9/lib/active_record/connection_adapters/abstract/database_statements.rb:192:in `transaction' 
/usr/lib/ruby/gems/1.9.1/gems/activerecord-3.2.9/lib/active_record/transactions.rb:208:in `transaction' 
/usr/lib/ruby/gems/1.9.1/gems/activerecord-3.2.9/lib/active_record/migration.rb:775:in `ddl_transaction' 
/usr/lib/ruby/gems/1.9.1/gems/activerecord-3.2.9/lib/active_record/migration.rb:719:in `block in migrate' 
/usr/lib/ruby/gems/1.9.1/gems/activerecord-3.2.9/lib/active_record/migration.rb:700:in `each' 
/usr/lib/ruby/gems/1.9.1/gems/activerecord-3.2.9/lib/active_record/migration.rb:700:in `migrate' 
/usr/lib/ruby/gems/1.9.1/gems/activerecord-3.2.9/lib/active_record/migration.rb:570:in `up' 
/usr/lib/ruby/gems/1.9.1/gems/activerecord-3.2.9/lib/active_record/migration.rb:551:in `migrate' 
/usr/lib/ruby/gems/1.9.1/gems/activerecord-3.2.9/lib/active_record/railties/databases.rake:179:in `block (2 levels) in <top (required)>' 
/usr/lib/ruby/gems/1.9.1/gems/rake-10.0.2/lib/rake/task.rb:227:in `call' 
/usr/lib/ruby/gems/1.9.1/gems/rake-10.0.2/lib/rake/task.rb:227:in `block in execute' 
/usr/lib/ruby/gems/1.9.1/gems/rake-10.0.2/lib/rake/task.rb:222:in `each' 
/usr/lib/ruby/gems/1.9.1/gems/rake-10.0.2/lib/rake/task.rb:222:in `execute' 
/usr/lib/ruby/gems/1.9.1/gems/rake-10.0.2/lib/rake/task.rb:166:in `block in invoke_with_call_chain' 
/usr/lib/ruby/1.9.1/monitor.rb:211:in `mon_synchronize' 
/usr/lib/ruby/gems/1.9.1/gems/rake-10.0.2/lib/rake/task.rb:159:in `invoke_with_call_chain' 
/usr/lib/ruby/gems/1.9.1/gems/rake-10.0.2/lib/rake/task.rb:152:in `invoke' 
/usr/lib/ruby/gems/1.9.1/gems/rake-10.0.2/lib/rake/application.rb:141:in `invoke_task' 
/usr/lib/ruby/gems/1.9.1/gems/rake-10.0.2/lib/rake/application.rb:99:in `block (2 levels) in top_level' 
/usr/lib/ruby/gems/1.9.1/gems/rake-10.0.2/lib/rake/application.rb:99:in `each' 
/usr/lib/ruby/gems/1.9.1/gems/rake-10.0.2/lib/rake/application.rb:99:in `block in top_level' 
/usr/lib/ruby/gems/1.9.1/gems/rake-10.0.2/lib/rake/application.rb:108:in `run_with_threads' 
/usr/lib/ruby/gems/1.9.1/gems/rake-10.0.2/lib/rake/application.rb:93:in `top_level' 
/usr/lib/ruby/gems/1.9.1/gems/rake-10.0.2/lib/rake/application.rb:71:in `block in run' 
/usr/lib/ruby/gems/1.9.1/gems/rake-10.0.2/lib/rake/application.rb:158:in `standard_exception_handling' 
/usr/lib/ruby/gems/1.9.1/gems/rake-10.0.2/lib/rake/application.rb:68:in `run' 
/usr/lib/ruby/gems/1.9.1/gems/rake-10.0.2/bin/rake:37:in `<top (required)>' 
/usr/bin/rake:23:in `load' 
/usr/bin/rake:23:in `<main>' 
Tasks: TOP => db:migrate 

這是遷移:

class CreateMonsters < ActiveRecord::Migration 
    def change 
    create_table :monsters do |t| 
     t.straing :name 
     t.text :description 

     t.timestamps 
    end 
    end 
end 

回答

1

t.straing?應該說是t.string

你貼(以下摘錄)

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

undefined method `straing' 

錯誤指向你的什麼是錯的

+1

我想,'如果你'包括方言straing'只被定義::方向南部'到'ActiveRecord :: Base'中。 –

+0

謝謝,我剛剛意識到我編程時遇到的最大問題是寫英文錯誤:D也謝謝,當我可以(12分鐘後)時,我將點擊綠色按鈕:D – user1609394