Я работаю с Django 2.2.10.
У меня есть модель с именем Site
и модель с именем Record
. Каждая запись связана с одним сайтом (внешний ключ).
После того, как мое приложение работает в течение нескольких дней / недель / месяцев, с каждым сайтом могут быть связаны тысячи записей. Я эффективно использую базу данных, поэтому обычно это не проблема.
В Django Администратор, однако когда я пытаюсь удалить сайт, Django Администратор пытается выяснить каждый связанный объект, который будет также будет удален, и поскольку мой ForeignKey использует on_delete=models.CASCADE
, что я и хочу, он пытается создать страницу, на которой перечислены тысячи, возможно, миллионы записей, которые будут удалены. Иногда это удается, но занимает несколько секунд. Иногда браузер просто перестает ждать.
Как я могу Django Admin не перечислять каждый record
, который он намеревается удалить? Может быть, просто скажите что-то вроде «x количество записей будет удалено».
Обновление: Должен ли я переопределять Django admin delete_confirmation. html? Похоже, виновником может быть эта строка:
<ul>{{ deleted_objects|unordered_list }}</ul>
Или есть где-то опция, которую можно включить, чтобы автоматически не перечислять каждый отдельный объект, который нужно удалить, возможно, если число объектов превышает X число объекты?
Обновление 2: удаление вышеуказанной строки из delete_confirmation. html не помогло. Я думаю, что это представление, которое генерирует переменную delete_objects, которая занимает слишком много времени. Не совсем уверен, как переопределить Django представление администратора