Django序列化器给出 'str' 对象没有 '_meta' 属性错误
我正在尝试创建一个Django视图,目的是返回一个包含最早和最新对象的JSON响应。但是不幸的是,它出现了错误,导致无法正常工作。
'str' object has no attribute '_meta'
我还有其他的序列化代码,它们都能正常工作。
以下是我的代码。
def get_calendar_limits(request):
result = serializers.serialize("json", Session.objects.aggregate(Max('date'), Min('date')), ensure_ascii=False)
return HttpResponse(result, mimetype="application/javascript")
非常感谢你的帮助。
3 个回答
1
Python有一个叫“json”的模块。这个模块里面有两个很重要的功能,一个叫“dumps”,另一个叫“loads”。它们的作用分别是把数据转换成一种可以存储的格式(叫序列化),以及把这种格式的数据再转换回原来的样子(叫反序列化)。
1
当我尝试把一个不是从Django的模型派生出来的对象进行序列化时,我遇到了同样的错误。
0
看看下面的内容:
objects= Session.objects.aggregate(Max('date'), Min('date'))
print [ type[o] for o in objects ]
result = serializers.serialize("json", objects, ensure_ascii=False)
你可以在交互式Python中试着运行上面的代码,作为一个实验。
你的对象是什么类型的?这个类型可以被序列化吗?