Django:未提交表单的只读字段

时间:2011-12-10 07:28:25

标签: django forms widget textinput

在我的表单中,我有一个只读字段。该字段的内容将由java脚本填充,并取决于可编辑字段的输入。为了避免用户修改字段数据,我想将其标记为只读。

当我在带有

的forms.py中将该字段标记为只读时
'key': forms.TextInput(attrs={'disabled':'disabled'}),

该字段的内容似乎是只读的,但不会被提交。当我尝试阅读form.cleaned_data ['key']时出现以下错误:

Exception Type:     MultiValueDictKeyError
Exception Value:    "Key 'key' not found in <QueryDict: ...>

有没有更好的方法在Django表单中将字段标记为“只读”而不是“禁用”?

感谢您的建议!

1 个答案:

答案 0 :(得分:7)

永远不会在表单数据中提交已禁用的字段。但您可以在几乎所有浏览器中使用readonly="readonly"属性supported

参考这篇文章http://www.cs.tut.fi/~jkorpela/forms/readonly.html也很有帮助。

快乐编码。