python - 仅查询相关名称的部分对象(来自ForeignKey)

标签 python django django-models

我必须建模:

class Blog(models.Model):
    name = models.CharField(max_length=100)
    tagline = models.TextField()

class Entry(models.Model):
    blog = models.ForeignKey(Blog,related_name='entries')
    headline = models.CharField(max_length=255)
    body_text = models.TextField()

我想获取所有博客,并且在每个博客中我都会拥有标题为“自行车”的所有条目。 因此,输出将是所有博客的列表,并且 blog.entries 将具有过滤后的条目列表。

最佳答案

您可以使用Prefetch :

entries = Entry.objects.filter(headline='bike')
blogs = Blog.objects.all().prefetch_related(Prefetch('entries', queryset=entries))

关于python - 仅查询相关名称的部分对象(来自ForeignKey),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41489432/

相关文章:

python - 在 Django 表单发布请求中访问单选/复选框按钮选择

python - 如何让 OpenGL 在 pygame 中绘制非显示表面?

python - 如何覆盖第三方 django 包的迁移

Python GTK MVC : Kiwi?

Python 对两个数字之间的元素求和

添加中间表单后,Django 管理站点操作不起作用

django - 如何修复 Django 的 get_or_create() 并发导致数据重复

python - 在 Django 中,我有一个复杂的查询,我只需要通过外键获取唯一值,这可能吗?

python - 如何将 timedelta 与 timezone.now 一起使用为默认值?

Django 删除多对多字段