【发布时间】:2013-02-10 20:52:12
【问题描述】:
在 Django 中是否可以有“条件”注解? 比方说,有以下型号
class Author(models.Model):
name = models.CharField()
class Article(models.Model):
title = models.CharField()
published = models.BooleanField()
现在我想选择一些有限(过滤)的作者查询集,并用总图书数和已出版图书数对它们进行注释,以供以后使用(例如在作者查询集上应用过滤器,或对其进行排序)。类似的东西
Author.objects.filter(name__icontains = 'a').annotate(total_books = Count('books')).annotate(published_books = Count('books', <here published=true filter>))
这可能吗?
【问题讨论】:
-
找到解决方案了吗?我也有类似的情况。我有附加到项目的文件,可以使用已删除的布尔字段删除文件。当我对文件进行注释以获取它们的状态时,它包括已删除的文件,即使文件对象管理器告诉 Django 忽略已删除的文件,除非指定。
标签: django django-models django-orm