【发布时间】:2011-01-06 23:39:09
【问题描述】:
现在我一直在使用 json 序列化程序,效果很好。
我不得不修改我开始使用 only() 和 defer() 过滤器的查询,就像这样 -
retObj = OBJModel.objects.defer("create_dt").filter(loged_in_dt__gte=dtStart)
完成上述操作后,突然 json 序列化程序返回空字段 -
{"pk": 19047, "model": "OBJModel_deferred_create_dt", "fields": {}}
如果我删除 defer(),序列化程序会正确地提供所有数据。
import json
from django.utils import simplejson
from django.core import serializers
json_serializer = serializers.get_serializer("json")()
retObj = OBJModel.objects.defer("create_dt").filter(loged_in_dt__gte=dtStart)
json_serializer.serialize(retObj, ensure_ascii=False)
我已经为此挠头了一段时间。任何见解都会很棒。
注意:我使用的是 django 1.1
【问题讨论】:
-
create_dt 是什么类型的字段?查看 Django 中的票证,仅存在一些错误并推迟。也许您的就是其中之一,或者是一个新错误。我不明白为什么它会这样做而不是一个错误。我希望我被证明是错的:)
-
它是
models.DateTimeField(auto_now_add=True)。我希望我没有隐藏错误..
标签: django json serialization