質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Q&A

解決済

1回答

1246閲覧

rails db:rollback STEP=2 できません。。

mmmaaarrrkkk000

総合スコア16

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

0グッド

0クリップ

投稿2021/04/10 03:09

前提・実現したいこと

ファイルを編集前にdb;migrate してしましました。

ファイルを編集したので
up 20210410003113 Add post id comments db:migrateをやり直したいです。。

Status Migration ID Migration Name -------------------------------------------------- up 20210409101436 Create posts up 20210410003113 Add post id comments up 20210410003607 Create comments

発生している問題・エラーメッセージ

rails db:rollback STEP=2 == 20210410003607 CreateComments: reverting =================================== -- drop_table(:comments) -> 0.0024s == 20210410003607 CreateComments: reverted (0.0042s) ========================== == 20210410003113 AddPostIdComments: reverting ================================ rails aborted! StandardError: An error has occurred, this and all later migrations canceled: undefined method `add_reference ' for #<AddPostIdComments:0x00007fc8aa183088> /Users/mark_naito/workspace/runteq/event/Basic_ability_task/CRUD_app_3/db/migrate/20210410003113_add_post_id_comments.rb:3:in `change' /Users/mark_naito/workspace/runteq/event/Basic_ability_task/CRUD_app_3/bin/rails:9:in `<top (required)>' /Users/mark_naito/workspace/runteq/event/Basic_ability_task/CRUD_app_3/bin/spring:15:in `<top (required)>' bin/rails:3:in `load' bin/rails:3:in `<main>' Caused by: NoMethodError: undefined method `add_reference ' for #<AddPostIdComments:0x00007fc8aa183088> /Users/mark_naito/workspace/runteq/event/Basic_ability_task/CRUD_app_3/db/migrate/20210410003113_add_post_id_comments.rb:3:in `change' /Users/mark_naito/workspace/runteq/event/Basic_ability_task/CRUD_app_3/bin/rails:9:in `<top (required)>' /Users/mark_naito/workspace/runteq/event/Basic_ability_task/CRUD_app_3/bin/spring:15:in `<top (required)>' bin/rails:3:in `load' bin/rails:3:in `<main>' Tasks: TOP => db:rollback (See full trace by running task with --trace) mark_naito@marknoMacBook-Air CRUD_app_3 % rails db:status rails aborted! Don't know how to build task 'db:status' (See the list of available tasks with `rails --tasks`) Did you mean? db:setup /Users/mark_naito/workspace/runteq/event/Basic_ability_task/CRUD_app_3/bin/rails:9:in `<top (required)>' /Users/mark_naito/workspace/runteq/event/Basic_ability_task/CRUD_app_3/bin/spring:15:in `<top (required)>' bin/rails:3:in `load' bin/rails:3:in `<main>' (See full trace by running task with --trace)

該当のソースコード

class AddPostIdComments < ActiveRecord::Migration[5.2] def change add_reference :comments, :post, null: false end end

試したこと

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

データベースは外部キー制約などの関係もあるので、常に戻せるわけではありません。
開発中であれば、もうデータベースを削除して最初からやり直すのがベストです。

つまり、こういう事です。

bin/rails db:drop bin/rails db:create bin/rails db:migrate

投稿2021/04/10 04:01

mingos

総合スコア4207

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

mmmaaarrrkkk000

2021/04/10 05:21

回答ありがとうございます。 解決しました! ありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問