Tengo un gran modelo de Django (73 campos) que se conectará a un ModelForm. Me gustaría utilizar una combinación de la funcionalidad encontrada en las aplicaciones de contribución Form Wizard y Form Preview.Django Form Wizard y Vista previa con ModelForm
Es decir, los campos del formulario se dividirían en varias páginas, y el usuario tendría la oportunidad de revisar/obtener una vista previa de los datos antes de que se cree la instancia del modelo.
¿Existe alguna de las mejores prácticas para este tipo de cosas, o código de ejemplo?
No vale la pena una respuesta, pero de todas formas: Puede ser problemático utilizar FormWizard para cualquier cosa más allá de las cosas más triviales (por lo al menos, fue para mí). Aquí hay una cosa: no se puede controlar lo que se pasa al '__init__' del formulario de una manera obvia (además de los valores iniciales). Entonces, ¿cómo va a proporcionar un argumento de palabra clave "instancia" al '' __init__' del formulario? Por supuesto, hay * formas *: yo, por ejemplo, lo resolví declarando una clase interna, que hereda del ModelForm necesario y anula '' init ''. Luego debe asignar esa clase a un elemento de .form_list. No es muy obvio ... – shylent
... y tienes que lidiar mucho con tales cosas si vas a usar FormWizard. No estoy diciendo que FormWizard sea malo, pero ciertamente no es muy fácil de usar. Y 73 campos? Lo sé, esto puede sonar tonto, pero, tal vez, hay una manera de simplificar la tarea dividiéndola en una serie de tareas más pequeñas. ¿Como reestructurar sus modelos y tratar por separado con cada uno de ellos o algo así? – shylent
Gracias por los comentarios, tímido. créanlo o no, los 73 campos se simplifican. Es solo una gran cantidad de datos que debemos recopilar. :-) –