根据这个问题:Difference between Django Form 'initial' and 'bound data'?:
这是关于绑定和未绑定表单的django文档的关键部分。
如果它绑定到一组数据,它就能够验证该数据并将表单呈现为HTML,并显示数据 HTML。
如果它是未绑定的,则无法进行验证(因为没有要验证的数据!),但它仍然可以将空白表单呈现为HTML。
我的问题是: 是否有一种简单的方法可以知道
我们有一个多继承的ModelForm噩梦,要弄清楚哪些是“绑定”所需的最小字段真的很难。
在这种情况下,我尝试将我的form.data
与vars(form.fields)
进行匹配,但这还不够,只是正在进行的聚会追踪模型并向{{1}添加越来越多的内容以特别的方式。
是否存在可绑定字段的最低要求的某些基数列表?
答案 0 :(得分:0)
根据您的澄清评论:
[T]这里有一些数据,但表格仍然是form.is_bound = False。我想知道的是,为了使is_bound为True,我还需要添加更多数据。
这不是存在或不存在哪些数据的问题,而是关于如何构造表单对象的问题。
来自docs:
To create an unbound Form instance, simply instantiate the class:
>>> f = ContactForm()
To bind data to a form, pass the data as a dictionary as the first parameter to your Form class constructor:
>>> data = {'subject': 'hello',
... 'message': 'Hi there',
... 'sender': 'foo@example.com',
... 'cc_myself': True}
>>> f = ContactForm(data)
也就是说,如果在实例化表单时提供了一个参数,那么它就是绑定的。如果不是,不是。