繁体   English   中英

如何在Django中使用查询集值filter过滤模型实例?

[英]How can I filter instances of a model in django, with a queryset value of filter field?

我正在django中创建一个应用程序,而我有下一个问题:

我想通过字段att1来填充modelA的对象,并且我有一个字段att1的值的查询集。 我的意思是,我的模型是:

class modelA(models.Model):
    att1 = models.ForeignKey(modelB)
    ...

class modelB(models.Model):
    ...

我有一个modelB的查询集对象,并且我想获取所有modelA的对象,这些对象的值att1是modelB的查询集的任何值。

我该怎么做?

非常感谢!

没什么魔术

ModelA.objects.filter(att1=queryset of modelB)

说您有对象B,其字段为att2和att3

class modelA(models.Model):
    att1 = models.ForeignKey(modelB)


class modelB(models.Model):
   att2 = models.CharField(max_length=255)
   att3 = models.CharField(max_length=255)

然后您通过执行以下操作进行过滤:结果= modelA.objects.filter(att1__att2 ='foo')

希望这可以帮助

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM