Ho un modulo Django con diversi campi al suo interno uno dei quali deve essere ripetuto n volte (dove n non è noto in fase di progettazione) come farei per codificare questo (se è possibile a tutti)?Django - Ripetizione di un campo modulo n volte in un modulo
ad es. invece di: -
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())
ho bisogno di qualcosa di simile a: -
Class PaymentsForm(forms.form):
invoice = forms.CharField(widget=ValueHiddenInput())
total = forms.CharField(widget=ValueHiddenInput())
item_name[n] = forms.CharField(widget=ValueHiddenInput())
Grazie,
Richard.
OK che sembra interessante, come posso passare il valore xrange (n) alla classe quando creo un'istanza del modulo? - (Indovina che ho bisogno di procurarmi dei libri Python :)) – Frozenskys
Funziona, ma ti consiglio di dividere il campo "n times" in un oggetto Form separato e usando un Formset, come nella risposta di Daniel Roseman. –
L'ho fatto in questo modo in diverse occasioni :) – Jiaaro