使用数据库中存在的数据呈现CheckBoxSelectMultiple表单。 [初始值是来自数据库的查询集]

时间:2019-09-11 07:34:10

标签: django django-models django-forms django-views

我有一个名为DemoForm的表格,它与模型Demo相关

class Demo(models.Model):
    user = models.ForeignKey(User, on_delete=models.CASCADE)
    ans = models.CharField(max_length=1024)

的形式是

class DemoForm(forms.ModelForm):
    class Meta:
        model = Demo
        exclude = ('user',)
        widgets = {'ans': forms.CheckboxSelectMultiple}

我想使用queryset呈现此表单,我尝试过类似

的方法
form = DemoForm(initial=Love.objects.filter(user=request.user))


<form=GoodForm()  
form.fields["ans"].queryset = Love.objects.filter(user=request.user) >


form=DemoForm(instance=Love.objects.filter(user=request.user)


form=DemoForm(instance=request.user.love_set.all())

有时它显示no _Meta present,而当我使用Initial时,它显示expected length 2 got 1 (got 3)

注意-Love模型与用户相关,其方式与Demo与使用ForeignKey与用户相关的方式相同。表示Love模型是Demo模型的副本。因此查询返回嵌套对象

0 个答案:

没有答案