如何让Django SQL查询同时使用不区分大小写和包含?

40 投票
2 回答
15740 浏览
提问于 2025-04-16 17:16

假设我在数据库里有两个用户,用户名分别是 'AbA' 和 'aBa'。我的查询词是 'ab'。

我使用了

User.objects.filter(username__contains='ab')

User.objects.filter(username__iexact='ab')

这两个查询都没有结果。不过,我想用类似 username__contains__iexact='ab' 的方式来找到 'AbA' 和 'aBa' 这两个用户名。

有没有人知道怎么解决这个问题?谢谢。

2 个回答

75

使用:

User.objects.filter(username__icontains='ab')

撰写回答