'Mycart' 类型的对象在 Django 中不可 JSON 序列化

Object of type 'Mycart' is not JSON serializable in Django

我想将字典(有模型)数据类型对象添加到 request.session 但得到 "Object of type 'Mycart' is not JSON serializable in Django"

product_details = {}
for product in products_in_cart:
    product_details.update({product.id: 
    (product,request.POST['quantity'+str(product.product.id)])})  
request.session['product_details'] = product_details

我希望字典在会话中更新,但实际输出是 "Object of type 'Mycart' is not JSON serializable in Django"

问题出在 product 上,它是字典中元组的第一个参数。你需要先序列化它,然后才能像这样在你的元组中使用它:

 from django.core import serializers

 product_details = {}
 for product in products_in_cart:
     s_product = serializers.serialize("json", [product])
     product_details.update({product.id: 
    (s_product,request.POST['quantity'+str(product.id)])})  
     request.session['product_details'] = product_details