Je définis un champ ChoiceField basé sur les données d'un modèle. Cependant, je voudrais préfixer mes options avec une option vide pour sélectionner les objets "non". Mais je ne peux pas trouver une bonne façon d'ajouter cela.Ajouter une option "vide" à un champ ChoiceField basé sur les données du modèle
Tous mes tests comme:
field = forms.ChoiceField(choices=[[0, '----------']].extend([[r.id, r.name] for r in Model.objects.all()]))
me renvoie une erreur "NoneType objet non itérables". La seule façon que j'ai trouvé jusqu'à présent est la suivante:
def append_empty(choices):
ret = [[0, '----------']]
for c in choices:
ret.append(c)
return ret
Et quand je définis mon champ:
forms.ChoiceField(choices=append_empty([[r.id, r.name] for r in
Restaurant.objects.all()]), required=False)
Cependant, je voudrais essayer de garder mon code propre et ne pas avoir ce genre des horreurs. Auriez-vous une idée pour moi? : p Merci d'avance.
Yay! :) Merci. Ça marche trouver maintenant. –