Django REST Framework ValidationError siempre devuelve 400
Estoy tratando de forzar aValidationError
para devolver un código de estado diferente al 400. Esto es lo que hice:
class MyValidationError(ValidationError):
status_code = HTTP_403_FORBIDDEN
y luego en un serializador:
def validate_field(self, value):
raise MyValidationError
¿Por qué obtengo 400 aquí en lugar de 403? Una cosa interesante es que si usoPermissionDenied
con un código de estado personalizado (probé 204) en lugar deValidationError
, funciona como se esperaba.