我有一个项目和类别模型。
我希望只返回类别的结果,如果他们有1个项目或更多......
这是我到目前为止所做的,但它似乎返回了错误的结果。
def category():
return { 'categories': Category.objects.filter(project=True).all().order_by('id')}
任何想法?
class Category(models.Model):
title = models.CharField(max_length=30)
slug = models.SlugField(max_length=100, blank=True, null=True)
class Project(ImageModel):
...
...
location = models.CharField(max_length=50, help_text='The city, town or area of the project.', null=True, blank=True)
categories = models.ManyToManyField(Category)
...
...
答案 0 :(得分:1)
Category.project是一名经理。
您可以使用注释。类似的东西:
Category.objects.annotate(projects=Count('project')).filter(projects__gt=1)
上的文档