gpt4 book ai didi

django - 从Django Rest框架中的序列化器发送自定义错误响应?

转载 作者:行者123 更新时间:2023-12-03 15:22:06 24 4
gpt4 key购买 nike

我想从序列化程序创建 View 发送自定义响应到我的应用程序的前端。我尝试了其余框架Response教程,但没有用。我的代码是:

class UserSerializer(serializers.ModelSerializer):
"""Serializer to serialize user model object"""

class Meta:
model = User
fields = ('id', 'username', 'password', 'first_name', 'last_name')
extra_kwargs = {'password': {'write_only': True}}

def create(self, validated_data):
"""create a new user"""

firstname = self.initial_data['first_name']
lastname = self.initial_data['last_name']
fullname = str(firstname) +" "+ str(lastname)
email = self.initial_data['username'].lower()

try:
customer = User.create(
name=fullname,
email=email)

except Error as e:
error = {'message': e._message or 'Unknown error'}
return Response(error,status=status.HTTP_400_BAD_REQUEST)

最佳答案

serializers.py

class UserSerializer(serializers.ModelSerializer):
"""Serializer to serialize user model object"""

class Meta:
model = User
fields = ('id', 'username', 'password', 'first_name', 'last_name')
extra_kwargs = {'password': {'write_only': True}}

def create(self, validated_data):
"""create a new user"""

firstname = validated_data['first_name']
lastname = validated_data['last_name']
fullname = str(firstname) +" "+ str(lastname)
email = validated_data['username'].lower()

try:
customer = User.objects.create(
name=fullname,
email=email)
return customer

except Exception as e:
error = {'message': ",".join(e.args) if len(e.args) > 0 else 'Unknown Error'}
raise serializers.ValidationError(error)

关于django - 从Django Rest框架中的序列化器发送自定义错误响应?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47325691/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com