Django-序列化(自定义序列化字段)
from rest_framework import serializers
class PlainListSerializers(serializers.ModelSerializer):
orders_count = serializers.SerializerMethodField()
class Meta:
model = PlainList
fields = '__all__'
def get_orders_count(self, obj):
return SysOrders.objects.filter(plain_num=obj.plain_num).count()
计划列表中包括某计划的订单数量,但不保存在数据库中,获取该计划的数据时通过计划号从订单库中获取该计划订单的数量(get_orders_count 与 orders_count 需对应)
def post(self, request):
data = json.loads(request.body.decode("utf-8"))
plains_query = PlainList.objects.all() if data["query"] == "" else \
PlainList.objects.filter(plain_num=data["query"])
serializer = PlainListSerializers(plains_query, many=True)
return Response(serializer.data)

浙公网安备 33010602011771号