0

私は試した "AddvideoToQuestions video: references"

質問には has_many の動画があります。ビデオは質問に属します。

rake しようとしdb:migrateましたが、次のエラーが発生しました。

調子はどう?私はついに Rails (私の最初の実際の言語) でのコーディングに深く入り込んでいますが、このバグが私に届いています。

SQLite3::SQLException: "参照" の近く: 構文エラー: ALTER TABLE "questions" ADD "video" 参照/Users/davidngo/.rvm/gems/ruby-1.9.3-p429/gems/sqlite3-1.3.7/lib /sqlite3/database.rb:91:in `initialize'

@Marek Lipka - それを試して、レーキdb:migrateを再試行しましたが、それでも同じエラーです。

以下はログです:

(お詫び -- コード ブロックの表示方法に慣れていません。

QLite3::SQLException:「参照」の近く:構文エラー:ALTER TABLE「質問」ADD「ビデオ」参照/Users/davidngo/.rvm/gems/ruby-1.9.3-p429/gems/sqlite3-1.3.7/lib /sqlite3/database.rb:91:in initialize' /Users/davidngo/.rvm/gems/ruby-1.9.3-p429/gems/sqlite3-1.3.7/lib/sqlite3/database.rb:91:in new' /Users/davidngo/.rvm/gems/ruby-1.9.3-p429/gems/sqlite3-1.3.7/lib/sqlite3/database.rb:91:in prepare' /Users/davidngo/.rvm/gems/ruby-1.9.3-p429/gems/sqlite3-1.3.7/lib/sqlite3/database.rb:134:in execute ' /Users/davidngo/.rvm/gems/ruby-1.9.3-p429/gems/activerecord-3.2.3/lib/active_record/connection_adapters/sqlite_adapter.rb:278:in block in execute' /Users/davidngo/.rvm/gems/ruby-1.9.3-p429/gems/activerecord-3.2.3/lib/active_record/connection_adapters/abstract_adapter.rb:280:inblock in log' /Users/davidngo/. rvm/gems/ruby-1.9.3-p429/gems/activesupport-3.2.3/lib/active_support/notifications/instrumenter.rb:20:in instrument' /Users/davidngo/.rvm/gems/ruby-1.9.3-p429/gems/activerecord-3.2.3/lib/active_record/connection_adapters/abstract_adapter.rb:275:inlog' /Users/davidngo/.rvm/gems/ruby-1.9.3 -p429/gems/activerecord-3.2.3/lib/active_record/connection_adapters/sqlite_adapter.rb:278:in execute' /Users/davidngo/.rvm/gems/ruby-1.9.3-p429/gems/activerecord-3.2.3/lib/active_record/connection_adapters/abstract/schema_statements.rb:264:in add_column' /Users/davidngo/.rvm/gems/ruby-1.9.3-p429/gems/activerecord-3.2.3/lib/active_record/connection_adapters/sqlite_adapter.rb:400:in add_column' /Users/davidngo/.rvm/gems/ruby-1.9.3-p429/gems/activerecord-3.2.3/lib/active_record/migration.rb:466:inblock in method_missing' /Users/davidngo/ .rvm/gems/ruby-1.9.3-p429/gems/activerecord-3.2.3/lib/active_record/migration.rb:438:in block in say_with_time' /Users/davidngo/.rvm/gems/ruby-1.9.3-p429/gems/activerecord-3.2.3/lib/active_record/migration.rb:438:insay_with_time' /Users/davidngo/.rvm/gems/ruby-1.9.3- p429/gems/activerecord-3.2.3/lib/active_record/migration.rb:458:in method_missing' /Users/davidngo/Desktop/Coding/RoR_Practice/videxpert/db/migrate/20130809091631_add_video_to_question.rb:3:in change' /Users/davidngo/.rvm/gems/ruby-1.9.3-p429/gems/activerecord-3.2.3/lib /active_record/migration.rb:407:in block (2 levels) in migrate' /Users/davidngo/.rvm/gems/ruby-1.9.3-p429/gems/activerecord-3.2.3/lib/active_record/migration.rb:407:inblock in migrate' /Users/davidngo/.rvm/gems/ruby-1.9.3-p429/gems/activerecord-3.2.3/lib/active_record/connection_adapters/abstract/connection_pool. rb:119:で with_connection' /Users/davidngo/.rvm/gems/ruby-1.9.3-p429/gems/activerecord-3.2.3/lib/active_record/migration.rb:389:inmigrate' /Users/davidngo/.rvm/gems/ruby-1.9.3-p429/gems/activerecord-3.2.3/lib/active_record/migration.rb:528:inmigrate' /Users/davidngo/.rvm/gems/ruby-1.9.3-p429/gems/activerecord-3.2.3/lib/active_record/migration.rb:720:inブロック (2 レベル) in migrate' /Users/ davidngo/.rvm/gems/ruby-1.9.3-p429/gems/activerecord-3.2.3/lib/active_record/migration.rb:775: in call' /Users/davidngo/.rvm/gems/ruby-1.9.3-p429/gems/activerecord-3.2.3/lib/active_record/migration.rb:775:inblock in ddl_transaction' /Users/davidngo/.rvm/gems/ruby- 1.9.3-p429/gems/activerecord-3.2.3/lib/active_record/connection_adapters/abstract/database_statements.rb:192:in transaction' /Users/davidngo/.rvm/gems/ruby-1.9.3-p429/gems/activerecord-3.2.3/lib/active_record/transactions.rb:208:intransaction' /Users/davidngo/.rvm/gems/ruby-1.9.3-p429/gems /activerecord-3.2.3/lib/active_record/migration.rb:775:in ddl_transaction' /Users/davidngo/.rvm/gems/ruby-1.9.3-p429/gems/activerecord-3.2.3/lib/active_record/migration.rb:719:inblock in migrate' /Users/davidngo/.rvm/gems/ruby-1.9.3-p429/gems/activerecord-3.2.3/lib/ active_record/migration.rb:700:in each' /Users/davidngo/.rvm/gems/ruby-1.9.3-p429/gems/activerecord-3.2.3/lib/active_record/migration.rb:700:inmigrate' /Users/davidngo/.rvm/gems/ruby-1.9.3-p429/gems/activerecord-3.2.3/lib/active_record/migration.rb:570:インチup' /Users/davidngo/.rvm/gems/ruby-1.9.3-p429/gems/activerecord-3.2.3/lib/active_record/migration.rb:551:inmigrate' /Users/davidngo/.rvm/gems/ruby-1.9.3-p429/gems/activerecord-3.2.3/lib/active_record/railties/databases.rake:153:in `ブロック (2 レベル) in '

4

2 に答える 2

0

これはすでに答えられていると思います: Rails 3 migrations:adding reference column?

そうは言っても、私は同様の問題を抱えていました。正確に何が問題なのかはわかりませんが、問題を回避した方法は次のとおりです。

rails g migration add_video_id_to_questions video_id:integer

于 2014-04-01T14:25:06.093 に答える