私のDjangoアプリケーションでは、ユーザーはphoto
オブジェクトとして保存された写真を投稿します。閲覧者は、photocomment
として保存された各写真の下にコメントを投稿し、photo
オブジェクトに外部キーを持つことができます。Django ORMクエリの一意のオブジェクト発生数の注釈
私はORMクエリーを作成しようとしています。リクエストされた各写真オブジェクトには、獲得したユニークなコメントの数が追加されます。ユニークは、ユニークなコメントを意味しますuser_id
。私。同じ男/女の子が1000回コメントした場合、それはまだ1つのユニークなコメントです。
どのように達成できますか?
これまでのところ、私は次のように作ってみた:
relevant_photos = Photo.objects.filter(id=set_of_ids)
PhotoComment.objects.filter(which_photo_id__in=relevant_photos).annotate(unique_comment_count=Count("submitted_by")).distinct("submitted_by")
私は、私は本当にここdistinct
コメンターを数えていないよので、これが動作することはできません感じています。これを行う正しい方法は何でしょうか?私の頭をそれのまわりで包み込むことを試みている。