首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用django对象Q将数据库查询到与操作符&

使用django对象Q将数据库查询到与操作符&
EN

Stack Overflow用户
提问于 2016-02-17 08:10:49
回答 1查看 134关注 0票数 1

如果我的问题已经存在,我会事先道歉,但我没有找到。

有一种模式:

代码语言:javascript
复制
    class Artikul_cabinets(models.Model):
         artikul_cabinets = models.CharField(verbose_name="Артикул шкафа", max_length=20)
         title_cabinets = models.CharField(verbose_name="Описание шкафа", max_length=200)
         width_cabinets = models.ManyToManyField(Width_cabinets)
         depth_cabinets = models.ManyToManyField(Depth_cabinets)
         unit_cabinets = models.ManyToManyField(Unit_cabinets)
         weight_cabinets = models.ManyToManyField(Weight_cabinets)
         type_cabinets = models.ForeignKey(Type_cabinets, default=1)
         color_cabinets = models.ForeignKey(Color_cabinets)
         glass_cabinets = models.ManyToManyField(Glass_cabinets)

    class Meta:
         verbose_name_plural = "Артикул шкафа"

    def __str__(self):
         return self.artikul_cabinets

在野外进行选择是必要的。

代码语言:javascript
复制
    glass_cabinets = models.ManyToManyField(Glass_cabinets)

所选内容如下

代码语言:javascript
复制
    data = Artikul_cabinets.objects.filter(Q(glass_cabinets=perf) & 
                       Q(glass_cabinets=glass)

perfglass具有不同值的变量。我返回到了空的QuerySet,尽管记录中存在参数为'perf‘和'glass’的数据库元素。

告诉我我做错了什么。

也曾尝试过:

代码语言:javascript
复制
    data = Artikul_cabinets.objects.filter(Q(glass_cabinets=perf),
                       Q(glass_cabinets=glass)

而且也不起作用,不过如果你把运算符‘\’的条件或正确的计算出来。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-02-17 09:01:02

所以我觉得你应该做Artikul_cabinets.objects.filter(glass_cabinets=perf).filter(glass_cabinets=glass‌​)

检查How to filter model results for multiple values for a many to many field in django

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35451105

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档