如何在django中修改绑定形式的字段的绑定值?

时间:2011-11-23 10:58:53

标签: django

我覆盖了表单的__init__方法。 我可以通过执行以下操作来设置初始值:

self.fields['fieldname'].initial = ....

但鉴于它受到约束,调用上述内容无效。 我试过这样做:

self.fields['fieldname'].bound_data = ....

但这不起作用。 有没有办法做到这一点?

1 个答案:

答案 0 :(得分:12)

您可以更新表单的data字典

self.data['fieldname'] = new_value

bound_data是一种方法,而不是属性,因此您无法在那里设置值。

除非您创建request.GET,否则

request.POSTcopy()是不可变的。您可以使用__init__方法或绑定表单之前进行复制。

data = request.POST.copy()
form = MyForm(data=data)