class ProductSerializer(ModelSerializer):
discount = serializers.ChoiceField(choices=[0, 10, 15, 20, 30, 50])
def validate(self, data):
if data['discount'] not in [0, 10, 15, 20, 30, 50]:
raise serializers.ValidationError(f"invalid discount")
return super().validate(data)
Есть такой код и по идее, когда серверу передать невалидный discount, то должна быть ошибка
{
"discount": [
"invalid discount"
]
}
но у меня почему-то другая:
{
"discount": [
"\"203\" is not a valid choice."
]
}
На месте 203 может быть любое другое неверное число