En étudiant dans Django Primer, j'ai eu l'erreur suivante dans la section Créer des données du site d'administration vers la base de données:
IntegrityError at /admin/diary/diary/add/ ������������"django_admin_log"������������������������������������������"django_admin_log_user_id_c564eba6_fk_auth_user_id"������������������������ DETAIL: ������������"auth_user"���������(user_id)=(3)������������������ Request Method: POST Request URL: http://127.0.0.1:8000/admin/diary/diary/add/ Django Version: 2.2.2 Exception Type: IntegrityError Exception Value: ������������"django_admin_log"������������������������������������������"django_admin_log_user_id_c564eba6_fk_auth_user_id"������������������������ DETAIL: ������������"auth_user"���������(user_id)=(3)������������������ Exception Location: C:\Users\grin\Anaconda3\envs\django\lib\site-packages\django\db\backends\base\base.py in _commit, line 240 Python Executable: C:\Users\grin\Anaconda3\envs\django\python.exe Python Version: 3.7.3
Cela semble être une erreur d'intégrité dans django_admin_log.
Cela semble se produire lorsque la table django_admin_log contient une relation de clé externe avec l'ancienne table auth_user. Par conséquent, vous devez le supprimer et recréer la table.
$ python manage.py dbshell
DROP TABLE django_admin_log;
\q
$ python manage.py sqlmigrate admin 0001 | python manage.py dbshell
Recommended Posts