Задать вопрос
x4zx
@x4zx
python developer

Нужно ли добавлять миграции Django в .gitignore?

Есть проект на Django, когда я его разрабатываю то используется дефолтная база данных db.sqlite3. Но когда я хочу запустить сайт на хостинге, база данный меняется на PostgreSQL. Вопрос: нужно ли удалять миграции которые были созданы при дефолтной базе?
Для хостинга у меня есть файл конфигурации запуска:
{
    "$schema": "https://railway.app/railway.schema.json",
    "build": {
        "builder": "NIXPACKS",
        "nixpacksPlan": {
            "providers": ["python"],
            "phases": {
                "setup": {"nixPkgs": ["...", "nodejs"]},
                "install_npm": {"cmds": ["npm ci --include=dev"], "dependsOn": ["setup"]},

                "tailwind": {
                        "cmds": [
                            "npx tailwindcss -i static/src/input.css -o static/src/output.css"
                        ],
                        "dependsOn": ["install"]
                }
            }
        }
    },
        "deploy": {
        "startCommand": "python manage.py makemigrations && python manage.py migrate && python manage.py collectstatic --noinput && gunicorn lyceum208.wsgi",
        "restartPolicyType": "ON_FAILURE",
        "restartPolicyMaxRetries": 10
    }
}

Соответственно при запуске проводятся все необходимые миграции в новую базу.

Или если я создал модель и уже провел для неё миграции на старой базе, то при подключении к PostresSQL заново для этой же модель проводить миграции не потребуется?
По поводу самого вопроса про .gitignore - имел ввиду надо ли их "прятать", чтобы хостинг потом с помощью файла конфигурации и команд в нём сам всё создал.

Честно говоря не совсем понимаю, зависят как-то миграции от базы или нет.
Поэтому попрошу отвечать максимально подробно. Заранее спасибо!
  • Вопрос задан
  • 361 просмотр
Подписаться 1 Простой Комментировать
Решения вопроса 1
sergey-gornostaev
@sergey-gornostaev Куратор тега Django
Седой и строгий
Миграции - это часть кодовой базы, исключать их не надо. Выполняться они должны при каждом развёртывании.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы