Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/357.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何在django表单中使用rest serializer.ValidationError?_Python_Django_Django Forms_Django Rest Framework - Fatal编程技术网

Python 如何在django表单中使用rest serializer.ValidationError?

Python 如何在django表单中使用rest serializer.ValidationError?,python,django,django-forms,django-rest-framework,Python,Django,Django Forms,Django Rest Framework,我是Django和rest_框架的新手。我有一个“新用户”页面的密码复杂性规则脚本 如果我的复杂性需求满足需求,它将返回true。否则会引发serialiser.ValidationError 我复制了Django的忘记密码机制来应用我的密码规则。 当它引发错误时,应用程序会崩溃,如下所示 Exception Type: ValidationError Exception Value: [u"The two password fields didn't match."] 是否可以将序列

我是Django和rest_框架的新手。我有一个“新用户”页面的密码复杂性规则脚本

如果我的复杂性需求满足需求,它将返回true。否则会引发serialiser.ValidationError

我复制了Django的忘记密码机制来应用我的密码规则。 当它引发错误时,应用程序会崩溃,如下所示

Exception Type: ValidationError
Exception Value:    
[u"The two password fields didn't match."]

是否可以将序列化程序错误用作表单错误{{form.new_password1.errors}

您可以编写自己的自定义异常处理程序,以首选格式返回错误

该官员在页面底部说:

ValidationError类应用于序列化程序和字段验证,并由验证器类使用。呼叫时也会引发该问题 serializer.u是否与raise\u exception关键字参数一起有效: 泛型视图使用raise_exception=True标志,这意味着您可以全局覆盖验证错误响应的样式 在您的API中。为此,请使用自定义异常处理程序,如下所述 上面

默认情况下,此异常会导致HTTP状态的响应 代码400错误请求


请阅读创建自定义处理程序。

Django有自己的验证错误类,您应该在表单中使用它。
serializer.is_valid(raise_exception=True)