2つのモデルがあるとしましょう:
class Recipe(models.Model):
recipe = models.TextField()
ingredients = models.ManyToManyField(Ingredient)
class Ingredient(models.Model):
name = models.CharField()
そして、すべてのレシピで最もよく使われている材料を知りたいです。
どうすればそれを照会できますか?
集計と注釈については、https: //docs.djangoproject.com/en/dev/topics/db/aggregation/ を参照してください。
最も一般的な成分の名前を取得するには:
from django.db.models import Count
most_common = Ingredient.objects.annotate(num_recipes=Count('recipe')).order_by('-num_recipes')[0]
print most_common.name