【发布时间】:2019-02-10 17:07:13
【问题描述】:
我正在使用 Wagtail CMS,我需要对我的 Orderable 模型进行一些验证。比如,确保最多填写一个字段。
通常,我会覆盖 Django 模型的 clean(self) 方法,但在该方法中调用 super().clean() 会返回 None。我仍然可以使用self.field_name 访问字段并且提高ValidationError 仍然会阻止创建模型,但它没有显示哪些字段导致管理界面中的模型出错。
我已尝试覆盖 clean 方法,该方法会阻止模型提交,但不会在界面上显示错误
我已经尝试关注this part of the guide,但是Orderable 甚至没有调用clean 方法。
这是我的clean方法的例子
def clean(self):
super().clean()
has_image = self.image is not None
has_video = self.video_url is not None
if has_image == has_video:
raise ValidationError('Either a video or an image must be set')
我希望验证错误会显示在管理界面中。
【问题讨论】:
标签: python django validation wagtail