1

次の行で私が何をしようとしているのかがわかると思います...

Group.objects.filter(contacts.count>1)

関連する連絡先が複数あるグループのみをフィルタリングして取得したいと考えています。

上記ではうまくいかないので、どうすればいいですか?

ありがとう

models.py

class Contact(models.Model):
    first_name = models.CharField(max_length=60)
    group = models.ForeignKey(Group, related_name='contacts')


class Group(models.Model):
    name = models.CharField(max_length=60)
4

1 に答える 1

7
from django.db.models import Count

Group.objects.annotate(c=Count('contacts')).filter(c__gt=1)

注釈と集計に関するドキュメント。注釈のフィルタリングも参照してください。

于 2013-04-02T16:46:10.487 に答える