Django: Pour la Boucle pour parcourir les Champs de Formulaire
Je ne veux pas utiliser de django reinhardt, construit en forme de génération, en cherchant à spécifier chaque champ dans mon template pour personnaliser la sortie html.
Comment puis-je effectuer une itération sur une série de champs de formulaire?
Si mon formulaire ressemble à ceci:
class MyForm(forms.Form):
main_image = forms.ImageField()
second_image = forms.ImageField()
third_image = forms.ImageField()
fourth_image = forms.ImageField()
...
Est-il la façon d'écrire une {% for %}
boucle afin que je puisse parcourir:
{{ form.main_image }}
{{ form.second_image }}
{{ form.third_image }}
{{ form.fourth_image }}
J'ai essayé la suite de ce qui semble logique, mais ne fonctionne pas:
{% for field in form %}
{{ form.field }}
{% endfor %}
OriginalL'auteur Nick B | 2013-10-01
Vous devez vous connecter pour publier un commentaire.
Eh bien, ce ne serait clairement pas le travail:
mais ce sera:
Que faire si je voulais exclure le premier champ et afficher uniquement la dernière champs?
le sale:
{% if forloop.counter != 1 %}
, mais je pense que vous êtes mieux de simplement l'exclusion du champ de la définition du formulaire..OriginalL'auteur mariodev
Celui-ci devrait fonctionner :
Une fois que vous parcourez champ dans le formulaire , vous ne pouvez pas accéder à la forme.champ
Je ne me préoccupe pas de crédit , je suis juste heureux que vous avez surmonté ce problème 🙂
Haha, merci! Toutes les idées sur la façon d'exclure le premier champ et d'afficher uniquement les champs restants?
Je vais vous donner un indice : il est tout au sujet d'un contrôle de flux
OriginalL'auteur
Le meilleur moyen est d'utiliser deux boucles, une pour les champs cachés et un pour visible champs :
visibles:
hiddens:
de cette façon, vous aurez un meilleur contrôle sur les éléments de l'INTERFACE utilisateur.
OriginalL'auteur AmiNadimi