typeerror object of type queryset is not json serializable django

这个错误是在Django中使用 JSON 格式序列化时出现的。这是因为 Django 中的 QuerySet 对象不能直接序列化为 JSON 格式。可以通过使用 serialize 库中的 serialize 函数或将它转换为列表然后再序列化。

如果想要将整个queryset序列化成json,可以用 django.core.serializers.serialize('json', queryset)

如果你想将每个模型的某些字段序列化为json,可以这样做:

data = [model_to_dict(item) for item in queryset]
json_data = json.dumps(data)
from json import JSONEncoder
class MyEncoder(JSONEncoder):
    def default(self, o):
        return o.__dict__
data = [MyEncoder().default(item) for item in queryset]
json_data = json.dumps(data)