【发布时间】:2020-05-17 19:36:46
【问题描述】:
如何使用不在请求负载中的键验证唯一约束?
我需要验证的密钥是user_id 和sku,但请求不包含user_id 密钥。
有效载荷示例:
{'sku': '123', data: []}
序列化器:
class ProductConfiguration(serializers.Serializer):
min_quantity = serializers.IntegerField(required=True)
price = serializers.DecimalField(
required=True,
decimal_places=2,
max_digits=10,
coerce_to_string=False
)
class ProductSerializer(serializers.ModelSerializer):
sku = serializers.CharField(required=True)
data = ProductConfiguration(many=True, required=True)
class Meta:
model = WholeSale
# the "id" and "user_id" columns should not be included on the response
exclude = ['id', 'user']
我需要验证 user 和 sku 密钥是否已经存在。
默认情况下,如果user_id 和sku 两个键在有效负载上drf 可以处理Unique 错误,如果其中一个不在有效负载上,我如何验证这两个键?
【问题讨论】:
标签: python django django-rest-framework