質問編集履歴
1
最新のschemaを追記しました。
test
CHANGED
File without changes
|
test
CHANGED
@@ -48,13 +48,73 @@
|
|
48
48
|
|
49
49
|
|
50
50
|
|
51
|
+
|
52
|
+
|
51
|
-
###
|
53
|
+
### 試したこと
|
54
|
+
|
55
|
+
1. 試しにユーザーを新規作成し、何のアクションもしないままユーザーの削除を試みると上手く削除出来ました。
|
56
|
+
|
57
|
+
|
58
|
+
|
59
|
+
2. 本アプリにはフォロー、投稿、コメント、いいね、メッセージ、通知機能などあるのですが、何かしらのアクションを起こした(また他ユーザーから起こされた)後だと削除が出来なくなります。やはり外部キーに問題があるようです。
|
60
|
+
|
61
|
+
|
62
|
+
|
63
|
+
3. 「ある該当のアクションを行うとユーザーの削除が出来なくなる」のではなく「基本的に何でもアクションを行う(される)と削除が出来なくなる」現象が起こっています。
|
64
|
+
|
65
|
+
あらゆるアクションに共通して絡んでいるのは通知機能である`Notifications`テーブルですので、こちらが怪しいのではと踏んだのですが、以下の理由からそれもどうやら違うようです。
|
66
|
+
|
67
|
+
|
68
|
+
|
69
|
+
メッセージ機能において、ユーザーがトークルーム(`Room`, `Entry`テーブル)を作成するアクションがあってからメッセージのやり取りが出来るようになるのですが、このアクション自体は相手に通知がいきません。
|
70
|
+
|
71
|
+
試しに「新規ユーザーA」を作成し、他のユーザーが「ユーザーA」とのトークルームを作った(メッセージの送信はしていない)段階で「ユーザーA」の削除を試みました(ユーザーAは何のアクションもしていない)。
|
72
|
+
|
73
|
+
しかしこれでも削除が出来なかったので、通知が絡んでいる・いないは関係ないようです…。
|
74
|
+
|
75
|
+
|
76
|
+
|
77
|
+
4. 最後にモデルの関連付けを全てコメントアウトしてからユーザーの削除を試みましたが、それでも全く同じエラーが出ました。
|
78
|
+
|
79
|
+
|
80
|
+
|
81
|
+
### 補足情報(FW/ツールのバージョンなど)
|
82
|
+
|
83
|
+
|
84
|
+
|
85
|
+
ruby 2.6.4p104
|
86
|
+
|
87
|
+
RubyGems 3.0.3
|
88
|
+
|
89
|
+
Rails 5.2.3
|
90
|
+
|
91
|
+
|
92
|
+
|
93
|
+
### 追記
|
94
|
+
|
95
|
+
|
96
|
+
|
97
|
+
`rails db:schema:dump`を行い`schema.rb`を最新のものにしました。
|
98
|
+
|
99
|
+
また追記により文字数制限を超えてしまったので、前回載せていた古い方の`schema.rb`を削除しました。
|
100
|
+
|
101
|
+
|
102
|
+
|
103
|
+
```
|
104
|
+
|
105
|
+
C:\Users\hoge\app\アプリ名>rails db:schema:dump
|
106
|
+
|
107
|
+
(0.4ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
|
108
|
+
|
109
|
+
↳ bin/rails:4
|
110
|
+
|
111
|
+
```
|
52
112
|
|
53
113
|
|
54
114
|
|
55
115
|
**schema.rb**
|
56
116
|
|
57
|
-
```
|
117
|
+
```
|
58
118
|
|
59
119
|
ActiveRecord::Schema.define(version: 2021_01_08_054626) do
|
60
120
|
|
@@ -353,43 +413,3 @@
|
|
353
413
|
end
|
354
414
|
|
355
415
|
```
|
356
|
-
|
357
|
-
|
358
|
-
|
359
|
-
### 試したこと
|
360
|
-
|
361
|
-
1. 試しにユーザーを新規作成し、何のアクションもしないままユーザーの削除を試みると上手く削除出来ました。
|
362
|
-
|
363
|
-
|
364
|
-
|
365
|
-
2. 本アプリにはフォロー、投稿、コメント、いいね、メッセージ、通知機能などあるのですが、何かしらのアクションを起こした(また他ユーザーから起こされた)後だと削除が出来なくなります。やはり外部キーに問題があるようです。
|
366
|
-
|
367
|
-
|
368
|
-
|
369
|
-
3. 「ある該当のアクションを行うとユーザーの削除が出来なくなる」のではなく「基本的に何でもアクションを行う(される)と削除が出来なくなる」現象が起こっています。
|
370
|
-
|
371
|
-
あらゆるアクションに共通して絡んでいるのは通知機能である`Notifications`テーブルですので、こちらが怪しいのではと踏んだのですが、以下の理由からそれもどうやら違うようです。
|
372
|
-
|
373
|
-
|
374
|
-
|
375
|
-
メッセージ機能において、ユーザーがトークルーム(`Room`, `Entry`テーブル)を作成するアクションがあってからメッセージのやり取りが出来るようになるのですが、このアクション自体は相手に通知がいきません。
|
376
|
-
|
377
|
-
試しに「新規ユーザーA」を作成し、他のユーザーが「ユーザーA」とのトークルームを作った(メッセージの送信はしていない)段階で「ユーザーA」の削除を試みました(ユーザーAは何のアクションもしていない)。
|
378
|
-
|
379
|
-
しかしこれでも削除が出来なかったので、通知が絡んでいる・いないは関係ないようです…。
|
380
|
-
|
381
|
-
|
382
|
-
|
383
|
-
4. 最後にモデルの関連付けを全てコメントアウトしてからユーザーの削除を試みましたが、それでも全く同じエラーが出ました。
|
384
|
-
|
385
|
-
|
386
|
-
|
387
|
-
### 補足情報(FW/ツールのバージョンなど)
|
388
|
-
|
389
|
-
|
390
|
-
|
391
|
-
ruby 2.6.4p104
|
392
|
-
|
393
|
-
RubyGems 3.0.3
|
394
|
-
|
395
|
-
Rails 5.2.3
|