使用相同的模型字段查询 django 模型

Posted

技术标签:

【中文标题】使用相同的模型字段查询 django 模型【英文标题】:query django model with same modelfields 【发布时间】:2021-11-14 09:17:37 【问题描述】:

所以我有这个 django 模型

class terrain(models.Model):
    location=models.CharField(max_length=200)
    size=models.CharField(max_length=200)
    def __str__(self):
        return str(self.location)

我如何获得具有相同大小的不同地形的位置,我使用了过滤器,但我必须指定大小例如

data=terrain.objects.filter(size="big")

如果不通过传递大小字段来指定大小,我不能这样做

【问题讨论】:

link 这是给你的。 【参考方案1】:

您需要指定字段。但是有多种过滤方式,您可以在一个字段或多个字段上进行过滤,具体取决于您的要求。

查看文档:django_ filters

【讨论】:

【参考方案2】:
terrains = terrain.objects.all()
data = 

for terrain in terrains:
    if data.get(terrain.size, None):
        data[terrain.size] = []
    data[terrain.size].append(terrain.location)

print(data) # this will contain all of the locations for different terrain size..

【讨论】:

以上是关于使用相同的模型字段查询 django 模型的主要内容,如果未能解决你的问题,请参考以下文章

在 Graphene Django 中查询多个模型

如何根据Django中相同模型的其他字段ID过滤字段值

Django 查询集过滤具有相同多对多字段的对象

Django通过对两个字段的查询来区分分组

如何强制 Django 模型中的 2 个字段共享相同的默认值?

如何使用格式化的日期时间字段获取 django 查询集结果