「ActiveRecord::PendingMigrationError」と出た時のエラー解決方法【rails】
この記事は、RubyOnRailsの基礎学習で、Twitter風のWebアプリケーション作成中に発生したエラーについて、備忘録としてまとめたものです。
発生している問題・エラーメッセージ
ユーザー登録機能を作成中に、ページを表示しようとしたら以下のエラーメッセージが出た。
「Migrations are pending」
マイグレーションが保留になっている
開発環境
・データベース:MYSQL
・railsのバージョン:5.0.7.1
・クラウド環境:AWS Cloud9
・使用PC:macbook pro
エラーの原因
今までにマイグレーションした履歴を確認
$ rails db:migrate status
usersテーブルがすでに作られているのに、もう一度作ってしまったため、エラーが出ているようです。
エラーの解決方法
今回は、usersテーブルに登録したuser情報が2つしかなかったため、データベースをリセットする方法をとります。
$ rails db:reset
これで、rails db:migrate
(実行)、rails db:drop
(削除)、rails db:create
(作成)を同時にやってくれる。
エラーが解決して、ページが表示されるようになりました。
ユーザーを作成
$ rails console
> user = User.new(name: '〜' , email: '〜', password: '〜')
> user.save
ステップアップのための備忘録
今回は、データベースをリセットする方法を用いたが、重複して作成してしまったデータのみを削除できるようにしたい。
Author And Source
この問題について(「ActiveRecord::PendingMigrationError」と出た時のエラー解決方法【rails】), 我々は、より多くの情報をここで見つけました https://qiita.com/ryota_ueda/items/fcf111ed0b56822408ed著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .