【发布时间】:2014-06-08 03:04:04
【问题描述】:
我在其中一个模型中有一个字段,例如:
field = models.CharField(max_length=10, null=True)
在 admin.py 我有
readonly_fields = ('field',)
当我尝试从管理员那里保存它时,它不会抛出一个非常正常的验证错误。
但如果我尝试在我的 views.py 中这样做,
form = MyForm(#some data here from request.POST)
print form.is_valid()
我收到错误提示:
'this field is required'
这里的MyForm 是该型号的ModelForm。我正在尝试创建另一个表单来替换管理员表单,以便我的团队可以使用我创建的新表单而不是管理员。
我想通过我已经编写的ModelForm 运行该表单,并且我不想重复代码并重新编写验证。
为什么管理表单和任何其他表单之间的这种行为不同?
在我的模型中说blank=True 是实现这项工作的唯一方法吗?
【问题讨论】:
-
如果您的字段是只读的,请尝试在您的模型表单中排除它
标签: python django forms django-admin dry