Necesito seleccionar varios objetos para eliminar de mi base de datos en django utilizando una página web. No hay ninguna categoría para seleccionar, así que no puedo eliminar de todos ellos de esa manera. ¿Tengo que implementar mi propio formulario de eliminación y procesarlo en django o django tiene una manera de hacerlo? Como se implementó en la interfaz de administración.Eliminar múltiples objetos en django
56
A
Respuesta
101
Puede eliminar cualquier QuerySet que desee. Por ejemplo, para borrar todas las entradas de blog con algún modelo Post
Post.objects.all().delete()
y eliminar cualquier mensaje con una futura fecha de publicación
Post.objects.filter(pub_date__gt=datetime.now()).delete()
Usted, sin embargo, es necesario llegar a una forma de restringir abajo de su QuerySet. Si solo desea una vista para eliminar un objeto en particular, consulte el delete generic view.
EDIT:
Lo siento por el malentendido. Creo que la respuesta está en algún punto intermedio. Para implementar el suyo, combine ModelForm
sy generic views. De lo contrario, busque en aplicaciones de terceros que ofrecen una funcionalidad similar. En un related question, la recomendación fue django-filter.
Cuestiones relacionadas
- 1. Eliminar múltiples objetos con rm()
- 2. Eliminación de objetos en Django
- 3. Imprimir Objetos en Django
- 4. Django ¿eliminar objeto extraño?
- 5. Django: filtrado en objetos relacionados
- 6. objetos únicos SECADOS en Django
- 7. ¿Usando Django bulk_create objetos en claves foráneas?
- 8. Cómo eliminar proyectos en django
- 9. Django no en cascada en eliminar
- 10. django filtrando condicionalmente objetos
- 11. La forma más rápida de eliminar múltiples objetos en cascada en Hibernate
- 12. ¿Cómo eliminar múltiples filas?
- 13. Múltiples aplicaciones con django
- 14. Almacén de objetos para objetos en Django entre las solicitudes
- 15. Eliminar dinámicamente formularios en línea en Django
- 16. cómo eliminar objetos grandes en postgres
- 17. Eliminar objetos de un ArrayList en Java
- 18. Eliminar objetos duplicados en una lista (C#)
- 19. ¿Cómo crear múltiples objetos en el fondo?
- 20. Múltiples objetos en la lista, C#
- 21. Eliminar objetos de tipo incompleto
- 22. Eliminar objetos al desconectar socket.io
- 23. Quitar de objetos serializados django
- 24. Django - Almacenar objetos en la sesión
- 25. Serialización de objetos clave extranjeros en Django
- 26. Django: objetos que se fusionan
- 27. Jquery agregar/eliminar múltiples atributos en seleccionar
- 28. ¿Cómo eliminar múltiples búferes en Vim?
- 29. ¿Cómo eliminar múltiples elementos seleccionados en ListBox?
- 30. ¿Cómo eliminar desde múltiples tablas en MySQL?
No ha entendido mal la pregunta. Entiendo que puedo borrar todo. Pero necesito seleccionar los objetos para eliminar con un formulario en una página web. Y luego procesar los datos devueltos desde el formulario en mi views.py. A continuación, repite lo que se devuelve en la forma de eliminar como un bucle a través de los datos. Pero quería saber cuál es la mejor práctica para implementar esto en django. – Dean
¡Ah, error mío! Yo usaría una aplicación de terceros o vistas genéricas con 'ModelForm's. –
@Dean, échale un vistazo a esa vista de eliminación. O simplemente puede escribir su propia vista ... Es decir, en última instancia, probablemente reciba una lista de PK y una llamada a eliminar en su modelo ... 'MyModel.objects.filter (id__in = request.POST.getlist ('delete_list')) .delete() 'y estoy seguro de que quieres algo para asegurarte de que una persona al azar no pueda eliminar todos los objetos en tu DB adivinando PKs. –