Встречается на собеседованиях • сегодня

Писал ли кастомные миграции в Django

Да, писал. Кастомные миграции в Django нужны, когда стандартного makemigrations недостаточно — например, для сложных преобразований данных, работы с сырым SQL или нестандартных операций с БД.

Пример:

python
from django.db import migrations

def forwards_func(apps, schema_editor):
    # Получаем модель из исторических версий
    User = apps.get_model('auth', 'User')
    # Массовое обновление записей
    User.objects.filter(is_staff=False).update(is_active=False)

class Migration(migrations.Migration):
dependencies = [('auth', 'XXXX_previous_migration')]
operations = [
migrations.RunPython(forwards_func, migrations.RunPython.noop)
]

text

**Нюансы:**  
- Используй `apps.get_model()`, а не прямой импорт моделей.  
- Для отката (`reverse`) либо реализуй функцию, либо используй `noop`.  
- В `RunSQL` можно выполнять сырые запросы, но осторожно с кросс-БД совместимостью.  
- Тестируй миграции на копии базы перед применением в продакшене.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы