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

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

新規登録して質問してみよう
ただいま回答率
85.46%
Django

DjangoはPythonで書かれた、オープンソースウェブアプリケーションのフレームワークです。複雑なデータベースを扱うウェブサイトを開発する際に必要な労力を減らす為にデザインされました。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1回答

3857閲覧

Django:「IntegrityError at *****」、「FOREIGN KEY constraint failed」エラーを解決したい。

退会済みユーザー

退会済みユーザー

総合スコア0

Django

DjangoはPythonで書かれた、オープンソースウェブアプリケーションのフレームワークです。複雑なデータベースを扱うウェブサイトを開発する際に必要な労力を減らす為にデザインされました。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2020/06/26 16:27

編集2020/06/28 09:05

djangoで各ユーザーが文章を自由に投稿できるアプリ(チュートリアル)を学習しています。

ある程度完成し、動作を確認しているのですが、ユーザー退会処理及び投稿削除処理の際に以下のエラーが発生してしまいます。

python

1IntegrityError at ***/*** 2FOREIGN KEY constraint failed

このエラー自体毎回ではなく、たまにしか発生せず、どこが原因なのか見当が付かず困っています。
どなたかヒントをいただけないでしょうか?
必要な情報があれば追記いたします。

ユーザー削除の処理

python

1class UserDeleteView(LoginRequiredMixin, generic.View): 2 3 def get(self, *args, **kwargs): 4 user = User.objects.get(email=self.request.user.email) 5 auth_logout(self.request) 6 user.delete() 7 return render(self.request,'user/delete_complete.html')

投稿削除処理

python

1class PostDeleteView(DeleteView): 2 model = Post 3 success_url = reverse_lazy('post:delete_done') 4 5def delete_done(request): 6 return render(request, 'post/delete_done.html')

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

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

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

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

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

ForestSeo

2020/06/26 20:34

ユーザー退会処理及び投稿削除処理の views.py をみせてください
退会済みユーザー

退会済みユーザー

2020/06/26 22:29

おはようございます。 関係のありそうな部分を追記致しました。
退会済みユーザー

退会済みユーザー

2020/06/26 22:34

不明なのが毎回じゃない事ですね。普通に削除できる時もあれば、たまにエラーが発生するところでしょうか。
退会済みユーザー

退会済みユーザー

2020/06/26 22:37

return self.connection.commit() エラー画面には上記の様なワードも出てきます。 何か手掛かりになりますでしょうか。
hasami

2020/06/27 04:57

外部参照制約に関するエラーのようですが、ユーザーを削除したとき、削除したユーザーが登録した投稿は削除されるのでしょうか? Postモデルの定義を確認させてください。
退会済みユーザー

退会済みユーザー

2020/06/27 06:24

コメントありがとうございます。 postモデルを追記致しました。
退会済みユーザー

退会済みユーザー

2020/06/27 08:45

保存して編集を続けるボタンの処理が何か絡んでる様な気がするのですが、原因特定に難儀しています。
ForestSeo

2020/06/27 09:45

models.CASCADE なので大丈夫だと思うのですが... マイグレーションしてみるとか?
退会済みユーザー

退会済みユーザー

2020/06/28 09:04 編集

別のモデルを定義しており、それが影響してる様です。
guest

回答1

0

ベストアンサー

別モデルのon_deleteの設定が間違っていた様です。皆様のコメントがヒントになり気づく事ができました。
ありがとうございました!

投稿2020/06/27 23:07

退会済みユーザー

退会済みユーザー

総合スコア0

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.46%

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

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

質問する

関連した質問