Django: Переход от нескольких баз данных к одной базе данных?

Я относительно новичок в Django (и в архитектуре веб-систем в целом) и ошибочно полагал, что создание проекта с отдельными базами данных для данных пользователей и данных основного приложения - хорошая идея. Изначально я создал два приложения, основное и пользовательское, с отдельными классами маршрутизаторов:

settings.py

DATABASES = {
        "default": {
        },
        USERS_DATABASE: {
            "ENGINE": "django.db.backends.postgresql",
            "NAME": "postgres",
            "USER": ...,
            "PASSWORD": ...,
            "HOST": "127.0.0.1",
            "PORT": "5000",
        },
        CORE_DATABASE: {
            "ENGINE": "django.db.backends.postgresql",
            "NAME": "postgres",
            "USER": ...,
            "PASSWORD": ...,
            "HOST": "127.0.0.1",
            "PORT": "5000",
        },
    }

routers.py

class AuthRouter:
    route_app_labels = {
        "auth",
        "contenttypes",
        "sessions",
        "admin",
    }
   ...

class CoreRouter:
    route_app_labels = {
        "core",
    }
   ...

Зная, что для нашего проекта нет необходимости использовать отдельные базы данных ядра и пользователей (и что это создаст нам больше проблем в будущем), я хотел бы перенести базу данных пользователей в базу данных ядра и назначить базу данных ядра базой данных по умолчанию. На данный момент есть только два пользователя, поэтому я не против потерять данные пользователей и воссоздать суперпользователя, если потребуется.

Однако перенос базы данных пользователей не кажется таким же простым, как редактирование settings.py и создание миграций. Редактирование файла settings.py для баз данных, чтобы он указывал на базу данных ядра, и запуск migrate для auth, admin, contenttypes или sessions ничего не дает. Есть ли способ заставить Django пересоздать таблицы для этих приложений (которые изначально были направлены в базу данных пользователей) в основной базе данных, чтобы отменить мое первоначальное решение использовать отдельные базы данных?

Edit: На самом деле, для меня не проблема потерять все данные в основной базе данных и начать с чистого листа. Но поскольку я новичок в Django, я не уверен, что мне нужно изменить в моем проекте, чтобы это было безопасно для меня. Я подозреваю, что для того, чтобы начать с чистого листа, мне нужно просто выполнить migrate {app} zero для всех приложений, удалить все таблицы в основной базе данных и снова запустить migrate.

Вернуться на верх