0

Djangoクエリセットを使用してこれを最適に解決しようとしています。

各図書館は1冊の本しか持てません。複数のライブラリに同じ本の複数のインスタンスを含めることができます(つまり、Library1には「ドラゴンタトゥーの女」のインスタンスを含めることができ、Library4には「ドラゴンタトゥーの女」の別のインスタンスを含めることができます)

Book(models.Model):
    name = models.CharField(max_length=30)

Library(models.Model):
    book = models.ForeignKey(Book)    # multiple libraries have the book
    city = models.CharField(max_length=50)

では、3つ未満の図書館にある本をどのように見つけるのでしょうか。

4

1 に答える 1

1

とを使用annotateCountます。

 Book.objects.annotate(n_libraries=Count('library')).filter(n_libraries__lt=3)
于 2013-01-18T18:09:25.340 に答える