Tengo un formulario Django con varios campos, uno de los cuales debe repetirse n veces (donde n no se conoce en el momento del diseño) cómo voy a codificar esto (si es posible en absoluto)?Django - Repetición de un campo de formulario n veces en un formulario
p. Ej. en lugar de: -
Class PaymentsForm(forms.form):
invoice = forms.CharField(widget=ValueHiddenInput())
total = forms.CharField(widget=ValueHiddenInput())
item_name_1 = forms.CharField(widget=ValueHiddenInput())
item_name_2 = forms.CharField(widget=ValueHiddenInput())
.
.
.
item_name_n = forms.CharField(widget=ValueHiddenInput())
necesito algo como: -
Class PaymentsForm(forms.form):
invoice = forms.CharField(widget=ValueHiddenInput())
total = forms.CharField(widget=ValueHiddenInput())
item_name[n] = forms.CharField(widget=ValueHiddenInput())
Gracias,
Richard.
OK que parece genial, ¿cómo podría pasar el valor de xrange (n) a la clase cuando creo una instancia del formulario? - (Supongo que necesito comprar algunos libros de pitón :)) – Frozenskys
Esto funciona, pero recomiendo dividir el campo "n times" en un objeto Form separado y usar un Formset, como en la respuesta de Daniel Roseman. –
Lo he hecho de esta manera en varias ocasiones :) – Jiaaro