在Django Form POST方法中,我想根据is_valid()
结果更改字段值。因此,我无法更改clean_*
方法中的值,因为is_valid()
不会被计算(也无法访问)。
基本上我需要根据is_cool
结果中的值(is_valid()
中的值)更改HTML的显示方式。如果需要,则需要由UI更改此值。在模板中我有类似的东西:
{% if record.is_cool %} something {% endif %}
这是可能的还是我应该改变模式?
答案 0 :(得分:0)
UI必须正确更新字段值,就像现在一样。
Django中的View可以传递条件is_cool
而不影响表单,并通过传递给render
函数的dict将其传递给模板。
查看代码段:
return render(request, self.template_name, {
'record': form,
'is_cool': True,
})
模板代码将改为:
{% if is_cool %} something {% endif %}
请注意,模板is_cool
和record.is_cool
中的变量不同。