Для тех, кто все еще ищет эффективный способ массового удаления в django, вот возможное решение:
Причина, по которой delete () может быть такой медленной, двояка: 1) django должен обеспечить правильное каскадное удаление функций, ища ссылки на внешние ключи для ваших моделей; 2) django должен обрабатывать сигналы до и после сохранения для ваших моделей.
Если вы знаете, что ваши модели не имеют каскадного удаления или обработки сигналов, вы можете ускорить этот процесс, прибегнув к закрытому API _raw_delete следующим образом:
queryset._raw_delete(queryset.db)
Подробнее в здесь . Обратите внимание, что django уже пытается хорошо обработать эти события, хотя во многих ситуациях использование необработанного удаления намного эффективнее.