1
events_in_period = Event.objects \
.filter(timestamp__gte=start_day,
timestamp__lte=end_day,
request__isnull=False,
name=EventType.COMPLETED) \
.annotate(date=TruncDay('timestamp')) \
.values('date') \
.annotate(completed_count=Count('id')) \
.order_by('date')
を主なものは.values()
ステートメントで、このステートメントはDjangoモデルインスタンスではなくdict
を含むQuerySetを返します。
ので、それを
from django.core import serializers
output = serializers.serialize('json', result)
をシリアル化するには、次の呼び出しは次のエラーで失敗:私は簡潔にするためにそれらを必要とするよう.values()
を省略せずにシリアライズに
AttributeError: 'dict' object has no attribute '_meta'
任意の提案。
さらに、 'dict'にJSON非シリアル化可能型(' datetime'など)が含まれている場合は、それらを変換する必要があります。または、[jsonplus](https://pypi.python.org/pypi/jsonplus)のようなライブラリを使用して、かゆみを傷つけるために作成しました。 – randomir