![](/img/trans.png)
[英]Flask FileStorage file becomes empty after creating ZipFile object
[英]Object data becomes empty after serializing
user = User.objects.filter(id=payload['id']).first()
carts = AddToCart.objects.filter(user=user)
sum_price = 0
for i in carts:
sum_price += int(i.product.price)
context = {
'carts': carts,
'sum_price': sum_price,
}
print(context)
serializer = AddToCartSerializer(context, many=True)
return Response(serializer.data)
**終端中打印的“上下文”看起來像這樣 {'carts': <QuerySet [<AddToCart: AddToCart object (3)>]>, 'sum_price': 100}。 但是在序列化之后它變成了空的。 有人能幫我嗎? **
這是 postman 中的 output
[
{},
{}
]
添加到購物車模型.py
class AddToCart(models.Model):
user = models.ForeignKey(User, on_delete=models.CASCADE)
product = models.ForeignKey(Product, on_delete=models.CASCADE)
AddToCartSerializer 序列化程序.py
class AddToCartSerializer(serializers.ModelSerializer):
user = serializers.ReadOnlyField(source='User')
product = serializers.ReadOnlyField(source='Product')
class Meta:
model = AddToCart
fields = ['user', 'product']
試試下面的代碼。
意見.py:
# context = {
# 'carts': carts,
# 'sum_price': sum_price,
# }
print('result1', carts)
serializer = AddToCartSerializer(carts, many=True)
data = {
'carts': serializer.data,
'sum_price': sum_price,
}
print('result2', data)
return Response(data)
序列化器.py:
class AddToCartSerializer(serializers.ModelSerializer):
class Meta:
model = AddToCart
fields = ['user', 'product']
read_only_fields = ['user', 'product']
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.