Приспособление не загружается в базу данных psql - Django
Я столкнулся с проблемой, когда я не могу загрузить данные приспособления в базу данных psql, используя метод loaddata. Я не получаю никаких ошибок, но когда я пишу: python manage.py loaddata whole.json
он говорит, что у меня есть Installed 111 object(s) from 1 fixture(s)
, но когда я вхожу в базу данных psql, я вижу, что ни в одной из таблиц нет данных.
Примеры кода
Я работаю со следующим кодом:
Settings.py
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'db_name',
'USER': 'user_name',
'PASSWORD': config('DB_PASSWORD'),
'HOST': 'localhost',
'PORT': '5432',
}
}
Signals.py
@receiver(post_save, sender=User)
def create_profile(sender, instance, created, **kwargs):
if kwargs['raw']:
return
if created:
...
Детали
Я выполнил все шаги в этой статье https://medium.com/djangotube/django-sqlite-to-postgresql-database-migration-e3c1f76711e1. Единственное, что я сделал по-другому, это установил пакет psycopg2-binary. Если вам нужны какие-либо подробности, примеры кода или разъяснения, вы можете просто спросить.
Кто-нибудь знает, почему приспособление не загружается в мою БД psql? Заранее спасибо.
После исследования моего приспособления я быстро понял, что я случайно сделал dumpfile моей новой psql db...
Причина, по которой это произошло, заключается в том, что я получил ошибку дублирования первичного ключа при попытке загрузить данные в первый раз. Это означало, что мне пришлось снова использовать метод dumpdata с опциями --natural-foreign и --natural-primary. Я просто забыл изменить настройки базы данных по умолчанию на исходную sqlite db, поэтому вместо этого я получил исправление моей новой psql db... не самый гордый момент...