django模型过滤字段的字段

sad*_*605 2 python django

我有这个模型:

class Article(models.Model):
    draft=models.BooleanField()
    public= models.IntegerField()

class PopularArticle(models.Model):
    article=models.ForeignKey(Article)
    priority= models.IntegerField()
Run Code Online (Sandbox Code Playgroud)

现在我想这样过滤:

PopularArticle.objects.filter(article.public=True,article.draft=False)
Run Code Online (Sandbox Code Playgroud)

换句话说,我想确保那些未处于草稿且已发表的热门文章。

我怎样才能做到这一点?

dan*_*eia 6

正确的查询是

PopularArticle.objects.filter(article__public=True, article__draft=False)
Run Code Online (Sandbox Code Playgroud)

您应该查看 django 文档来了解这一点。它有很好的记录。