Django ; Как я могу перенести проект, сделанный с помощью sqlite3 на postgresql

В течение нескольких дней мой друг работал в OS:windows и он сделал часть django приложения используя базу данных :sqlite3, он дал мне резервную копию своей работы для завершения моей части, на резервной копии я нашел базу данных под названием databaseproject. db, Мой вопрос в том, что я использую Linux в качестве ОС и postgresql, Как я могу перенести эту базу данных databaseproject.db (это база данных sqlite3) на postgresql.

Ps: когда я попробовал выполнить следующую команду в каталоге (после копирования проекта в виртуальную среду на моем linux):

python manage.py dumpdata --natural-foreign \
   --exclude=auth.permission --exclude=contenttypes \
   --indent=4 > data.json

----> команда проходит без ошибок, Здесь я обнаружил, что data.json содержит пустой список..

Я хочу знать, как правильно перейти с sqlite3 на postgresql?

Заранее спасибо.

Простейшим способом будет использование dumpdata, за которым следует loaddata здесь.

Если вы видите пустой файл дампа, вам необходимо провести небольшое расследование.

Во-первых, вы можете использовать что-то вроде Sqlite Browser, чтобы убедиться, что данные существуют в общей базе данных, убедиться, что модели приложения содержат данные, а не встроенные модели django.

Тогда вам нужно убедиться, что приложение добавлено внутри INSTALLED_APPS в setttings.py.

И что приложение содержит файл с именем models.py, содержащий модели приложения.

Откройте вашу базу данных любой командой SQLite Viewer и тогда вы сможете убедиться, есть ли у вас данные или нет. Если у вас есть данные, то сделайте их дамп следующей командой:

python manage.py dumpdata --natural-foreign \
   --exclude=auth.permission --exclude=contenttypes \
   --indent=4 > data.json

далее обновите настройки базы данных с помощью конфигурации PostgreSQL и затем загрузите данные в базу данных PostgreSQL следующей командой:

python manage.py loaddata data.json
Вернуться на верх