1

このプロファイルが誰をサポートするかを示す次の自己参照モデルがあります。

    supports = models.ManyToManyField('self', blank=True, symmetrical=False,
                                  related_name='supporters')

そして、このユーザーをサポートするサポーターは、サポートしないでカウントしてください。

何か案は ?

def get_queryset(self):
    qs = super(ProfileListView, self).get_queryset()
    if self.request.GET.get('s'):
        sorting = self.request.GET.get('s')
        if sorting == 'pop':

            qs = ......
    return qs
4

2 に答える 2

0

以下のようにサポーターの数に注釈を付けて、私の問題を解決しました

 qs = qs.annotate(number_of_supporters=Count('supporters'))
 qs = qs.order_by('-number_of_supporters')
于 2013-06-30T19:37:09.020 に答える