質問編集履歴
5
修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,22 +1,21 @@
|
|
1
1
|
### 前提・実現したいこと
|
2
|
-
|
3
|
-
ここに質問の内容を詳しく書いてください。
|
4
2
|
現在、Ruby on Rails(Rails 5.0.7.2)にてフリマアプリ作成を行っています。
|
5
|
-
間違えて作成してしまったテーブル
|
3
|
+
間違えて作成してしまったテーブルカラムを削除したいのですがrollbackできなくなってしまった。
|
6
4
|
|
5
|
+
### 状況詳細
|
7
|
-
もともと作成してあったモデルにカラムを追加したかったため
|
6
|
+
もともと作成してあったモデルテーブルにカラムを追加したかったため
|
8
|
-
マイグレーションファイルを作成→外部キー付きカラムを追加。
|
7
|
+
マイグレーションファイルを新規作成→外部キー付きカラムを追加。
|
9
8
|
|
10
|
-
カラム名を変更した際、rollbackせずに名前を修正(credit→credit_card)→そのままdb:migrate
|
9
|
+
カラム名を変更した際、rollbackせずに名前を修正(credit→credit_card)→そのままdb:migrate
|
11
|
-
|
10
|
+
誤りに気づき、rollbackして修正後のカラムを削除したのですが、schema.rbファイルには
|
12
11
|
修正前、修正後、どちらのカラムも残ったまま。
|
13
12
|
|
14
|
-
sequel proにも、どちらも存在する状態
|
13
|
+
sequel proにも、どちらも存在する状態
|
15
14
|
↓
|
16
|
-
credit_id
|
15
|
+
credit_id(修正前)
|
17
|
-
credit_card_id
|
16
|
+
credit_card_id(修正後)
|
18
17
|
|
19
|
-
### カラム追加のため作成したマイグレーションファイルの現
|
18
|
+
### カラム追加のため作成したマイグレーションファイルの現状
|
20
19
|
```
|
21
20
|
class AddCreditToUsers < ActiveRecord::Migration[5.0]
|
22
21
|
def change
|
@@ -24,11 +23,7 @@
|
|
24
23
|
end
|
25
24
|
end
|
26
25
|
```
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
### 発生している
|
26
|
+
### 発生しているエラーメッセージ
|
31
|
-
|
32
27
|
```
|
33
28
|
PC ECapp % rails db:rollback
|
34
29
|
== 20200314043753 AddCreditToUsers: reverting =================================
|
@@ -57,13 +52,13 @@
|
|
57
52
|
Rails 5.0.7.2
|
58
53
|
```
|
59
54
|
|
60
|
-
### 試した
|
55
|
+
### 試したこと
|
61
56
|
rollbackできないので、内容がいまどうなっているのかdb:migrateしたところ
|
62
57
|
schema.rbファイルからadd_foreign_key "users", "credit_cards"が削除されていました。
|
63
58
|
|
64
59
|
rollbackし忘れて修正、db:migrateした場合の参考記事が見つからず困っています。
|
65
|
-
今現在「カラム追加のため作成したマイグレーションファイルの現
|
60
|
+
今現在「カラム追加のため作成したマイグレーションファイルの現状」、のマイグレーションファイルが
|
66
|
-
|
61
|
+
あるにもかかわらずその内容の外部キーはないというエラーがでていますがなぜかわかりません。
|
67
62
|
なにかアドバイスありましたらいただけますでしょうか。
|
68
63
|
|
69
64
|
よろしくお願いいたします。
|
4
文章修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -61,6 +61,9 @@
|
|
61
61
|
rollbackできないので、内容がいまどうなっているのかdb:migrateしたところ
|
62
62
|
schema.rbファイルからadd_foreign_key "users", "credit_cards"が削除されていました。
|
63
63
|
|
64
|
-
rollbackし忘れて修正、db:migrateした場合の参考記事が見つからず
|
64
|
+
rollbackし忘れて修正、db:migrateした場合の参考記事が見つからず困っています。
|
65
|
-
の
|
65
|
+
今現在「カラム追加のため作成したマイグレーションファイルの現在のコード内容」、の
|
66
|
+
マイグレーションファイルがあるにもかかわらずその内容の外部キーはないというエラーがでているという認識です。
|
66
|
-
|
67
|
+
なにかアドバイスありましたらいただけますでしょうか。
|
68
|
+
|
69
|
+
よろしくお願いいたします。
|
3
内容修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -16,7 +16,7 @@
|
|
16
16
|
credit_id
|
17
17
|
credit_card_id
|
18
18
|
|
19
|
-
###
|
19
|
+
### カラム追加のため作成したマイグレーションファイルの現在のコード内容
|
20
20
|
```
|
21
21
|
class AddCreditToUsers < ActiveRecord::Migration[5.0]
|
22
22
|
def change
|
2
内容修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -4,15 +4,29 @@
|
|
4
4
|
現在、Ruby on Rails(Rails 5.0.7.2)にてフリマアプリ作成を行っています。
|
5
5
|
間違えて作成してしまったテーブル内のカラムを削除したいのですがrollbackできず困っています。
|
6
6
|
|
7
|
-
|
7
|
+
もともと作成してあったモデルにカラムを追加したかったため
|
8
|
+
マイグレーションファイルを作成→外部キー付きカラムを追加。
|
9
|
+
|
8
|
-
カラム名を変更した際、rollbackせずに名前を修正
|
10
|
+
カラム名を変更した際、rollbackせずに名前を修正(credit→credit_card)→そのままdb:migrateしてしまい
|
9
|
-
それに気づき、修正後のカラムを削除したのですが、schema.rbファイルには
|
11
|
+
それに気づき、rollbackして修正後のカラムを削除したのですが、schema.rbファイルには
|
10
|
-
修正前、修正後、どちらのカラムも残ったまま
|
12
|
+
修正前、修正後、どちらのカラムも残ったまま。
|
13
|
+
|
14
|
+
sequel proにも、どちらも存在する状態です。
|
11
15
|
↓
|
12
16
|
credit_id
|
13
17
|
credit_card_id
|
14
|
-
(sequel proにも、どちらも存在する状態)
|
15
18
|
|
19
|
+
### 現在のコード
|
20
|
+
```
|
21
|
+
class AddCreditToUsers < ActiveRecord::Migration[5.0]
|
22
|
+
def change
|
23
|
+
add_reference :users, :credit_card, foreign_key: true
|
24
|
+
end
|
25
|
+
end
|
26
|
+
```
|
27
|
+
|
28
|
+
|
29
|
+
|
16
30
|
### 発生している問題・エラーメッセージ
|
17
31
|
|
18
32
|
```
|
1
タイトル変更
title
CHANGED
@@ -1,1 +1,1 @@
|
|
1
|
-
[
|
1
|
+
[Rails5]rollbackをし忘れてカラム名修正後db:migrateしてしまった
|
body
CHANGED
File without changes
|