Stephen
Stephen

Reputation: 6319

Populate ChoiceField from database

I'd like to have several fields in my form being rendered as ChoiceFields which get their content from the database.

I was thinking something like:

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

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

But the field series is now not appearing at all in my form. What am I missing?

After trying the solution (using the ModelChoiceField), I'm still seeing the same issue. Here is my code:

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

Upvotes: 6

Views: 11248

Answers (1)

Ignacio Vazquez-Abrams
Ignacio Vazquez-Abrams

Reputation: 798686

Use a ModelChoiceField instead.

Upvotes: 7

Related Questions