Django
Django Migrations
Schema changes and data migrations
Django Migrations
- Change
models.py python manage.py makemigrations- Review the generated migration file
python manage.py migrate
Data migration (sketch)
from django.db import migrations
def forwards(apps, schema_editor):
Task = apps.get_model("tasks", "Task")
Task.objects.filter(priority="").update(priority="med")
class Migration(migrations.Migration):
dependencies = [("tasks", "0002_auto_...")]
operations = [migrations.RunPython(forwards, migrations.RunPython.noop)]
Commit migrations to Git. Run migrate in CI/CD before deploying new code.