You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Django查询中忽略大小写进行字符串过滤?

解决Django查询忽略大小写的过滤问题

直接把查询中的__contains替换为__icontains即可实现不区分大小写的模糊匹配,这是Django ORM提供的原生解决方案,适配绝大多数主流数据库:

alerts = Event.objects.filter(process_type__reporting_group__option__icontains=group_search_bar)

如果需要更自定义的大小写处理逻辑,也可以通过将字段和输入值统一转成小写(或大写)来实现,示例如下:

先导入Lower函数:

from django.db.models.functions import Lower

再构造查询:

alerts = Event.objects.filter(Lower(process_type__reporting_group__option)__contains=Lower(group_search_bar))

这种方式适合需要对大小写转换有额外控制的场景,但日常使用中__icontains已经足够简洁高效。

内容的提问来源于stack exchange,提问作者edche

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 03:24:24