考虑到这些关系:
出版物 - (n:m) - 文章 - (n:m) - 广告 - (n:1) - 合作伙伴
如何查询所有包含特定合作伙伴广告的出版物?例如:
result = Publication.objects.filter(articles.adverts.partner = partner)
答案 0 :(得分:2)
您可以使用__
访问查询中的外键(或外键attr)。
示例:
result = Publication.objects.filter(articles__adverts__partner = partner)
提示: __
< - 这是2个下划线(_ _
)
让我们假设您的Partner
模型有一个名为username
的字段,您也可以这样做:
result = Publication.objects.filter(articles__adverts__partner__username = 'username')
你也可以这样做:
result = Publication.objects.filter(articles__adverts__partner__username__icontains = 'adm')