我想在模型类中编写模型验证,而不是在ModelForm中编写,以便DRY。
我设法做到了这一点,但当我提升ValidationError
时,django.forms.ValidationError
或django.core.exception.ValidationError
会打破页面。
如何在不破坏页面的情况下显示错误消息。
答案 0 :(得分:0)
我相信模型的验证是在保存时完成的,所以如果你在视图中有这样的东西
if form.is_valid():
obj = form.save()
将其更改为:
if form.is_valid():
obj = form.save(commit=False)
try:
obj.save()
except ValidationError as e:
# i.e. Add error message from e to form
pass
else:
return http.HttpResponseRedirect('.')