gpt4 book ai didi

django - 如何在Django Rest Framework ModelSerializer中覆盖模型字段验证

转载 作者:行者123 更新时间:2023-12-04 04:35:02 31 4
gpt4 key购买 nike

我有以下模型:

class UserProfile(models.Model):
mobileNumber = models.BigIntegerField(primary_key=True)
authKey = models.CharField(max_length=300,null=False,blank=False)
creationDateTime = models.DateTimeField(auto_now_add=True)
lastUpdateDateTime = models.DateTimeField(auto_now=True)

序列化器:
class UserProfileSerializer(serializers.ModelSerializer):
class Meta:
model = UserProfile
fields = ('mobileNumber','authKey')

如果用户个人资料模型已经具有手机号码XX44,并且如果我尝试使用带有json {'mobileNumber':XX44,'authKey':u'ggsdsagldaslhdkjashdjkashdjkahsdkjah'}的UserProfileSerializer进行序列化,则会出现以下错误:
{'mobileNumber': [u'User profile with this MobileNumber already exists.']}

因为正在为序列化器字段运行模型验证。

如何停止执行mobileNumber的模型字段验证。我曾尝试在序列化器中使用validate和validate_mobileNumber方法,但它们仍在执行模型验证。

最佳答案

消除对表的移动数量的唯一约束,因此django序列化器将根据该值进行验证。

或者
或者,

   serializer=UserProfileSerializer(data=request.DATA,partial=True)

关于django - 如何在Django Rest Framework ModelSerializer中覆盖模型字段验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22634161/

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