Tastypieリソースで、クエリセットに注釈を付けていますが、注釈がJSONに流れてTastypieが生成して返すのがわかりません。コードは単純です:
class CompetitionResource(ModelResource):
total_tickets = fields.IntegerField(readonly=True)
class Meta:
queryset = Competition.objects.all().annotate(total_tickets=Count('ticket__ticketownership__user__id', distinct=True))
クエリセットで生成して注釈を付けているそのカウントは、最終的なJSONには表示されません。最終的なJSONにはtotal_usersフィールドがあります(ModelResourceで宣言したため)が、nullです。このような注釈が確実に通過するようにするために、明らかな何かが欠けていますか?そうでない場合、これを解決する方法は何でしょうか?
これを行う1つの方法は、モデルに属性を作成してから、ModelResourceのtotal_usersフィールドをその属性に関連付けることです。しかし、それはおそらく、データベースから取得した個々の競争ごとにカウントクエリを生成することになり、それは良くありません。1つのアノテーションタイプのクエリで実行したいと思います。