Мне нужно выбрать несколько объектов, которые нужно удалить из моей базы данных в django, используя веб-страницу. Нет категории для выбора, поэтому я не могу удалить их из них. Должен ли я реализовать свою собственную форму удаления и обработать ее в django или у django есть способ сделать это? Как это реализовано в интерфейсе администратора.
Удаление нескольких объектов в django
Ответ 1
Вы можете удалить любой QuerySet, который вы хотите. Например, чтобы удалить все сообщения в блоге с помощью некоторой модели Post
Post.objects.all().delete()
и удалить любую публикацию с датой публикации в будущем
Post.objects.filter(pub_date__gt=datetime.now()).delete()
Однако вам нужно придумать способ сузить ваш QuerySet. Если вы просто хотите, чтобы представление удаляло определенный объект, просмотрите удалить общий вид.
EDIT:
Извините за недоразумение. Я думаю, что ответ находится где-то между ними. Чтобы реализовать свои собственные, объедините ModelForm
и общие представления. В противном случае изучите сторонние приложения, которые предоставляют аналогичную функциональность. В связанном вопросе рекомендация была django-filter.