0

所以,我正在尝试在 Django Form 中实现Select 小部件,以输入到Model.It 中的OneToOne区域。它出现了,但问题是不知道如何用初始数据填充它。

模型.py

class Check(models.Model):
    name = models.CharField(max_length = 100)
    def __unicode__(self):
         return self.name

class Check_date(models.Model):
    date = models.DateTimeField()
    check = models.ForeignKey(Check)

    def __unicode__(self):
         return '%s' % (self.date)

表格.py

class Check_DateForm(forms.Form):
date = forms.DateTimeField(label = 'Time of Check', widget  = forms.DateTimeInput)
check_id = forms.ChoiceField(label = 'Check ID', widget = forms.Select)

所以,必须有一些选择,导致检查模型。我说的是这个输入。

check_id = forms.ChoiceField(label = 'Обход', widget = forms.Select)
4

2 回答 2

2

您应该使用 a ModelChoiceField,并将其传递给查询集,如下所示:

check_id = forms.ModelChoiceField(queryset=Check.objects.all())

于 2013-10-22T11:48:13.547 回答
0

将表单对象调用到视图中时,您可以使用初始值预填充字段。

 def view(request):
        game = Game.objects.get(id=1) # just an example
        data = {'id': game.id, 'name': game.name}
        form = UserQueueForm(initial=data)
        return render_to_response('my_template.html', {'form': form})

当表单被放入模板时,它将预先填写这些字段。

于 2013-10-22T11:50:51.313 回答