0
Schedule
というモデルにManyToManyField、roomId
というモデルがあります。これは、ForeignKey
,buildingId
を持つRoom
モデルにリンクしています。Django Querysetの注釈は1つの結果しか返しません
私のクエリセットでは、それぞれroomId
に対してbuildingId
のリストが必要です。
:
queryset = Schedule.objects.all().annotate(buildingId=F('roomId__buildingId'))
も:
queryset = Schedule.objects.all().annotate(buildingId=RawSQL("select roomId from api_room where buildingId_id = 1",()))
秒1は、2つの結果を返すべき単なるテストです。 これらの両方は、最初の結果のみを返します。だから私が得たbuildingId
は、すべての一致する結果のリストではなく、最初の結果のIDです。
これはうまくいくようですが、 'queryset'に' building'プロパティを追加するにはどうしたらいいですか?それは私の 'filter_class'と' serializer_class'でも使えるはずです。 –