{
"status": 400,
"errors": [
"designation Invalid pk "2" - object does not exist.",
"provincedetails Invalid pk "10" - object does not exist."
]
}
我知道为什么会抛出这个错误,因为关系对象不存在所以..但是我想自定义这个错误,比如删除 PK 并添加 ID,这可能吗?
{
"status": 400,
"errors": [
"designation Invalid pk "2" - object does not exist.",
"provincedetails Invalid pk "10" - object does not exist."
]
}
我知道为什么会抛出这个错误,因为关系对象不存在所以..但是我想自定义这个错误,比如删除 PK 并添加 ID,这可能吗?
您可以实现自定义Exception处理程序,如文档中所述,
您可以搜索pk(注意空格!)并将其替换为id. 请注意,这是 hacky。如果通过本地化更容易,我肯定会使用该选项。话虽这么说,我不知道您为什么要首先将表单更改pk为id。
没有尝试这样做,但看起来错误文本包含在里面
django-rest-framework/rest_framework/locale/{LANG_CODE}/LC_MESSAGES/django.po
因此您可以使用自定义国际化更改错误消息