Django 查找Queryset的反向ForeignKey实例?

Django 查找Queryset的反向ForeignKey实例?,django,Django,django文档非常清楚如何在单个实例上查找字段,但反向关系QuerySet对象又如何呢 示例: class Author(models.Model) name = models.Charfield(...) class Book(models.Model) title = models.Charfield(...) author = models.ForeignKey(Author, ...) 我现在创建一个queryset对象: special_books = B

django文档非常清楚如何在单个实例上查找字段,但反向关系QuerySet对象又如何呢

示例:

class Author(models.Model)
    name = models.Charfield(...)

class Book(models.Model)
    title = models.Charfield(...)
    author = models.ForeignKey(Author, ...)
我现在创建一个queryset对象:

special_books = Book.objects.filter(title__icontains="Space")
现在,我想找到属于特殊书籍的所有作者。我想这样做:

special_books.authors.all()
如果不这样做:

authors = []
for book in special_books:
    authors += book.author

有什么方法可以轻松做到这一点吗?

只需查找作者模型即可


使用引用的模型名称(Book小写)进行查询:

Author.objects.filter(book\uu title\uu icontains=“Space”)
如果您的外键中定义了
相关的\u名称

class Book(models.Model)
    title = models.Charfield(...)
    author = models.ForeignKey(Author, related_name="books")
您的查询集将是:

Author.objects.filter(books\uu title\uu icontains=“Space”)
引述:

相关经理也支持现场查找。API会根据需要自动跟踪关系。使用双下划线分隔关系。这可以根据您的需要进行任意深度的操作


对不起,我必须重新提交这个问题。我把问题答错了。对不起,答案是一样的,相反,同样的规则也适用于你坚持它!抱歉搞混了!你的答案很好!对不起,我必须重新提交这个问题。我把问题答错了。很抱歉但你的回答对我的要求是正确的。太棒了,这我不知道。我不知道,我可以通过相关名称作为查询属性引用反向模型管理器!好极了
class Book(models.Model)
    title = models.Charfield(...)
    author = models.ForeignKey(Author, related_name="books")