2010-02-02 4 views
4

J'aimerais que plusieurs champs de mon formulaire soient rendus en tant que champs ChoiceFields qui obtiennent leur contenu de la base de données.Remplir ChoiceField à partir de la base de données

Je pensais quelque chose comme:

class SeriesForm(ModelForm): 
    series = forms.ChoiceField(choices=Series.objects.all()) 

    class Meta: 
    model = Series 
    exclude = ('model', 'date_added',) 

Mais le champ series est maintenant ne figurant pas du tout dans ma forme. Qu'est-ce que je rate? Après avoir essayé la solution (en utilisant le ModelChoiceField), je vois toujours le même problème. Voici mon code:

series = forms.ModelChoiceField(queryset=Series.objects.values('series'), 
    empty_label="  ") 

Répondre

3

Utilisez plutôt un ModelChoiceField.

+0

Merci, cela a très bien fonctionné. – Stephen

+0

J'ai changé mon code comme ci-dessus .... et j'ai le même problème qu'avant – Stephen

+3

@Ignacio Il est plus utile pour les utilisateurs si vous résolvez réellement le problème de l'utilisateur dans la réponse, au lieu de lier un site qui pourrait bouger ou changez les URL, rendant votre réponse inutile. –

Questions connexes