Встречается на собеседованиях • сегодня
Делал ли кастомные миграции в Django
Да, делал. Кастомные миграции в Django нужны для сложных изменений БД, которые не покрываются стандартными makemigrations. Например, массовые обновления данных, работа с сырыми SQL или нестандартные операции.
Пример кастомной миграции:
python
from django.db import migrations
def forwards_func(apps, schema_editor):
MyModel = apps.get_model('myapp', 'MyModel')
for obj in MyModel.objects.filter(status='old'):
obj.status = 'new'
obj.save()
class Migration(migrations.Migration):
dependencies = [('myapp', 'previous_migration')]
operations = [
migrations.RunPython(forwards_func),
]
text
Нюансы:
- Всегда указывайте `dependencies`.
- Используйте `apps.get_model`, а не прямой импорт моделей.
- Для отката можно добавить `reverse_code` в `RunPython`.
- Для сырого SQL — `migrations.RunSQL`.
Кастомные миграции требуют тестирования, особенно на проде.
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы