在ModelViewSet中返回422状态代码 [英] Return 422 status code in ModelViewSet

查看:25
本文介绍了在ModelViewSet中返回422状态代码的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

对于与EmberData的互操作性it seems,每当发生验证错误时,我需要reply with 422(Unprocessable Entity)而不是400(Bad Request)。我有两个问题:

和奖金:

  • 为什么EmberData预期为422?据我所知,这不是JSONAPi规范的一部分。

推荐答案

422是WebDAV DRF的一部分,错误代码不在DRF中。 这并不能阻止你使用它。它们只是数字本身的人类可读版本。

一个选项是覆盖rest_framework.exceptions.ValidationError.status_code并将其设置为422。

编辑-更改默认错误代码:

# At the top of a views.py file, by the ends of import add:
from rest_framework.exceptions import ValidationError
ValidationError.status_code = 422

这篇关于在ModelViewSet中返回422状态代码的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆