0

このクエリを django で実行しようとしていますが、最善の方法がわかりません。グループ化してから数えて、その数で並べ替える必要があります...

私は次のようなスルーモデルを持っています:

ProjectView(models.Model):
  user = models.ForeignKey(User)
  project = models.ForeignKey(Project)
  datetime_created = models.DateTimeField()

昨日以降、ほとんどのビューで順序付けされたプロジェクトのリストを取得したいと考えています。

4

1 に答える 1

0

このようなもの(テストされていません):

projects = Project.objects \
                  .annotate(total_views=Count('projectview__project'))
                  .order_by('-total_views')

はモデルProject名、projectviewthrough表です。

于 2013-02-03T16:10:00.537 に答える