2008-10-07 16 views
47

¿Solo me pregunto si existe una manera fácil de agregar la funcionalidad para duplicar una lista existente en la interfaz de administración?En la interfaz de administración de Django, ¿hay alguna manera de duplicar un elemento?

En la entrada de datos nos hemos encontrado con una gran cantidad de elementos que comparten datos genéricos con otro elemento, y para ahorrar tiempo sería muy fácil duplicar rápidamente una lista existente y solo alterar los datos modificados. Usar una mejor estructura de modelo sería una forma de reducir la duplicación de los datos, pero puede haber una situación en la que los datos duplicados deban cambiarse de forma individual en el futuro.

Respuesta

83

Puede save as con sólo permite añadir esto a su ModelAdmin:

save_as = True 

Esto reemplaza el botón "Guardar y añadir otro" botón con una "Guardar como". "Guardar como" significa que el objeto se guardará como un nuevo objeto (con una nueva ID), en lugar del objeto anterior.

+1

Implementación de esto no era obvio para mí y encontré que [la sección de otra pregunta titulada 'Sample admin.py'] (http://stackoverflow.com/questions/18577324/django-save-as-new-and- keep-image-fields) muestra que debe derivar de ModelAdmin y luego usar 'admin.site.register (Person, PersonAdmin)' (si PersonAdmin es su clase derivada) en lugar de usar 'admin.site.register (Person) ' – sage

Cuestiones relacionadas