1
私は注入/カスタムでシリアライザのエラーレジスタにカスタムエラーメッセージを追加しようとしているシンプルなビューセットは、以下のシリアライザを使用していますDjango Rest Frameworkの検証にカスタムエラーメッセージを追加するにはどうすればいいですか?
class UserViewSet(viewsets.ModelViewSet):
queryset = User.objects.all()
# more properties below.
def create(self, request, *args, **kwargs):
serialized_data = UserSerializer(data=request.data)
if serialized_data.is_valid():
# method to create a user.
return Response(status=status.HTTP_201_CREATED)
else:
print serialized_data.errors,
print serialized_data.error_messages
return Response(status=status.HTTP_404_NOT_FOUND)
、
class UserSerializer(serializers.ModelSerializer):
error_messages = {}
class Meta:
model = User
fields = ("first_name", "email", 'password', "username")
extra_kwargs = {"password": {"write_only": True}}
def validate_email(self, value):
required_value = "" #something that doesn't matter here
if value is not required_vaue:
# i want to append the custom error message to the serializer
error_messages = {"email": {"invalid": "the email is not acceptable!"}}
return value
を持っていますvalidate_email
メソッドですので、serialized_data.error_messages
と併用することができます。
にエラーメッセージを追加しようとすることができhttp://www.django-rest-framework.org/api-guide/validators/#writing-custom-validators
をバリ、私は追加することができます'serialized_data.error_messages'へのエラー?? – Marty