現在我已經使用json序列化器,它工作得很好。Django:json序列化使用defer()或僅使用()的查詢集
我不得不修改我的疑問,我開始使用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的門票,只有一些錯誤和延期。也許你是其中之一,或者是一個新的bug。我不明白爲什麼它會這樣做,而不是一個錯誤。我希望我被證明是錯誤的,但:) – Bartek
它的'models.DateTimeField(auto_now_add = True)'。我希望我沒有隱藏一個bug .. – PlanetUnknown