辞書のリストを検証するシリアライザを作成するにはどうすればよいですか?送信されてDRFシリアライザを使用して辞書のリストを確認する
サンプルペイロードがある:
this SO answerと thisから撮影"payment_discount": [
{
"discount_rule_id": 1,
"discount_rule_name": "10 day early payment",
"discount_earned": "298.00"
},
{
"discount_rule_id": 2,
"discount_rule_name": "Store discount",
"discount_earned": "5.50"
},
]
:
これによりclass PaymentDiscountSerializer(serializers.DictField):
discount_rule_id = serializers.IntegerField(required=False)
discount_rule_name = serializers.CharField(max_length=50)
discount_earned = serializers.DecimalField(max_digits=10, decimal_places=3)
class PaymentDiscountListSerializer(serializers.ListField):
"""Serialize discount object"""
child = PaymentDiscountSerializer()
class PaymentSerializer(serializers.ModelSerializer):
payment_discount = PaymentDiscountListSerializer()
# Other model fields
、私はserializer.dataを使用してペイロードにpayment_discountオブジェクトへのアクセスを得ることができますが、残念ながらたとえば、辞書に対して検証が行われていない場合& djangorestframeworkは==私はあなたがあなたのシリアライザを簡素化することができると思い3.5.1