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

neu*_*rix 0 forms django widget textinput

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

当我在forms.py中将该字段标记为只读时

'key': forms.TextInput(attrs={'disabled':'disabled'}),
Run Code Online (Sandbox Code Playgroud)

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

Exception Type:     MultiValueDictKeyError
Exception Value:    "Key 'key' not found in <QueryDict: ...>
Run Code Online (Sandbox Code Playgroud)

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

谢谢你的建议!

sim*_*rsh 7

禁用字段永远不会在表单数据中提交.但是你可以使用,几乎所有浏览器都支持readonly="readonly"它.

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

快乐的编码.