ActiveRecord::PendingMigrationErrorの対処法がわかりません。
解決済
回答 1
投稿
- 評価
- クリップ 0
- VIEW 1,239
サーバーを起動させた際に、
ActiveRecord::PendingMigrationError
Migrations are pending. To resolve this issue, run: bin/rake db:migrate RAILS_ENV=development
というエラーが出ました。ターミナルの方では、
ActiveRecord::PendingMigrationError (
Migrations are pending. To resolve this issue, run:
bin/rake db:migrate RAILS_ENV=development
):
activerecord (4.2.5) lib/active_record/migration.rb:392:in check_pending!'
activerecord (4.2.5) lib/active_record/migration.rb:373:in
call'
actionpack (4.2.5) lib/action_dispatch/middleware/callbacks.rb:29:in block in call'
activesupport (4.2.5) lib/active_support/callbacks.rb:88:in
run_callbacks'
activesupport (4.2.5) lib/active_support/callbacks.rb:778:in _run_call_callbacks'
activesupport (4.2.5) lib/active_support/callbacks.rb:81:in
run_callbacks'
actionpack (4.2.5) lib/action_dispatch/middleware/callbacks.rb:27:in call'
actionpack (4.2.5) lib/action_dispatch/middleware/reloader.rb:73:in
call'
actionpack (4.2.5) lib/action_dispatch/middleware/remote_ip.rb:78:in call'
actionpack (4.2.5) lib/action_dispatch/middleware/debug_exceptions.rb:17:in
call'
web-console (2.3.0) lib/web_console/middleware.rb:20:in block in call'
web-console (2.3.0) lib/web_console/middleware.rb:18:in
catch'
web-console (2.3.0) lib/web_console/middleware.rb:18:in call'
actionpack (4.2.5) lib/action_dispatch/middleware/show_exceptions.rb:30:in
call'
railties (4.2.5) lib/rails/rack/logger.rb:38:in call_app'
railties (4.2.5) lib/rails/rack/logger.rb:20:in
block in call'
activesupport (4.2.5) lib/active_support/tagged_logging.rb:68:in block in tagged'
activesupport (4.2.5) lib/active_support/tagged_logging.rb:26:in
tagged'
activesupport (4.2.5) lib/active_support/tagged_logging.rb:68:in tagged'
railties (4.2.5) lib/rails/rack/logger.rb:20:in
call'
actionpack (4.2.5) lib/action_dispatch/middleware/request_id.rb:21:in call'
rack (1.6.4) lib/rack/methodoverride.rb:22:in
call'
rack (1.6.4) lib/rack/runtime.rb:18:in call'
activesupport (4.2.5) lib/active_support/cache/strategy/local_cache_middleware.rb:28:in
call'
rack (1.6.4) lib/rack/lock.rb:17:in call'
actionpack (4.2.5) lib/action_dispatch/middleware/static.rb:116:in
call'
rack (1.6.4) lib/rack/sendfile.rb:113:in call'
railties (4.2.5) lib/rails/engine.rb:518:in
call'
railties (4.2.5) lib/rails/application.rb:165:in call'
rack (1.6.4) lib/rack/lock.rb:17:in
call'
rack (1.6.4) lib/rack/content_length.rb:15:in call'
rack (1.6.4) lib/rack/handler/webrick.rb:88:in
service'
/usr/local/rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/webrick/httpserver.rb:140:in service'
/usr/local/rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/webrick/httpserver.rb:96:in
run'
/usr/local/rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/webrick/server.rb:296:in `block in start_thread'
Rendered /usr/local/rvm/gems/ruby-2.3.0/gems/actionpack-4.2.5/lib/action_dispatch/middleware/templates/rescues/_source.erb (2.9ms)
Rendered /usr/local/rvm/gems/ruby-2.3.0/gems/actionpack-4.2.5/lib/action_dispatch/middleware/templates/rescues/_trace.html.erb (1.7ms)
Rendered /usr/local/rvm/gems/ruby-2.3.0/gems/actionpack-4.2.5/lib/action_dispatch/middleware/templates/rescues/_request_and_response.html.erb (1.1ms)
Rendered /usr/local/rvm/gems/ruby-2.3.0/gems/actionpack-4.2.5/lib/action_dispatch/middleware/templates/rescues/diagnostics.html.erb within rescues/layout (78.1ms)
と出ています。
rake db:migrate:reset をしてからおかしくなったような気がしているんですが、正直初めてみる現象だったので、どこから手をつけるべきなのか困っています。よろしくお願いします。
-
気になる質問をクリップする
クリップした質問は、後からいつでもマイページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
クリップを取り消します
-
良い質問の評価を上げる
以下のような質問は評価を上げましょう
- 質問内容が明確
- 自分も答えを知りたい
- 質問者以外のユーザにも役立つ
評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。
質問の評価を上げたことを取り消します
-
評価を下げられる数の上限に達しました
評価を下げることができません
- 1日5回まで評価を下げられます
- 1日に1ユーザに対して2回まで評価を下げられます
質問の評価を下げる
teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。
- プログラミングに関係のない質問
- やってほしいことだけを記載した丸投げの質問
- 問題・課題が含まれていない質問
- 意図的に内容が抹消された質問
- 過去に投稿した質問と同じ内容の質問
- 広告と受け取られるような投稿
評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。
質問の評価を下げたことを取り消します
この機能は開放されていません
評価を下げる条件を満たしてません
質問の評価を下げる機能の利用条件
この機能を利用するためには、以下の事項を行う必要があります。
- 質問回答など一定の行動
-
メールアドレスの認証
メールアドレスの認証
-
質問評価に関するヘルプページの閲覧
質問評価に関するヘルプページの閲覧
checkベストアンサー
+1
まだ適用されていないmigrationがあるようです。
未適用のmigrationが存在する場合、サーバーの起動はエラーとなります。
エラーメッセージ通り、
rake db:migrate RAILS_ENV=development
とやってみてください。
投稿
-
回答の評価を上げる
以下のような回答は評価を上げましょう
- 正しい回答
- わかりやすい回答
- ためになる回答
評価が高い回答ほどページの上位に表示されます。
-
回答の評価を下げる
下記のような回答は推奨されていません。
- 間違っている回答
- 質問の回答になっていない投稿
- スパムや攻撃的な表現を用いた投稿
評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。
15分調べてもわからないことは、teratailで質問しよう!
- ただいまの回答率 88.35%
- 質問をまとめることで、思考を整理して素早く解決
- テンプレート機能で、簡単に質問をまとめられる
2016/06/13 01:04
2016/06/13 01:42
マイグレーションの設定に不備があると、その時点で止まってしまい、それ以降が反映されない事がよくあります。
(私も、よくindex名が長すぎる等のエラーを起こします)
たいていの場合、エラーを起こしているマイグレーションを修正してから、db:migrateすればOKなのですが、indexのエラーのように、テーブルを作った後にエラーが起きていると、マイグレーションとしては、テーブルが生成されていない状況になるので、すでに存在するテーブルを作成しようとしてエラーになります。
データが消えても問題ないのであれば、再度db:migrate:resetすればOKですが、それ以外の時には、DBのコマンドでテーブルをドロップするしかないです。
よくある事なので、読みにくくてもエラーメッセージはよく読んでおく事をお勧めします。