Django查询过滤中"name__icontains"和"description__icontains"的含义是什么?

13 投票
2 回答
21761 浏览
提问于 2025-04-15 21:11
maps = (maps.filter(name__icontains=search_terms) |
            maps.filter(description__icontains=search_terms))

我找不到这些过滤参数的意思。

2 个回答

3

xxx_icontains 会在整个 xxx 字段中查找给定的内容,而且不区分大小写。

http://docs.djangoproject.com/en/1.1/ref/models/querysets/#icontains

23

这是一个不区分大小写的包含测试

举个例子:

Entry.objects.get(headline__icontains='Lennon')

相应的SQL语句是:

SELECT ... WHERE headline ILIKE '%Lennon%';

在你的情况下,代码的意思是,如果名称或描述字段中包含search_terms的值,那么maps应该是True

撰写回答