Django表单,包含基于queryset的字段

时间:2017-06-22 06:02:55

标签: python django forms

我试图创建一个django表单,我希望每个Region(一个类)都有一个字段

我有以下表格:

class ShippingForm (forms.Form):
    def __init__(self, *args, **kwargs):
        super(ShippingForm, self).__init__(*args, **kwargs)
        from models import Region
        regions = Region.objects.all()
        for r in regions:
            self.fields['region_%d' % r.id] = forms.IntegerField(attrs={'class' : 'form-control'})

我将上述内容基于this answer

我创建了4个区域记录,但是当我在模板中显示此表单时,它是空白的。我错过了什么?

1 个答案:

答案 0 :(得分:0)

周杰伦在评论中回答了这个问题,我把这里放在了anser / close问题上。

看起来你应该使用widget =例如

forms.IntegerField(widget=forms.TextInput(attrs={'class' : 'form-control'})) 

forms.IntegerField(widget=forms.NumberInput(attrs={'class' : 'form-control'}))