29

如何在 Django 中的同一查询中使用contains和字段查找?iexact

像那样 ..

casas = Casa.objects.filter(nome_fantasia__contains__iexact='green')
4

2 回答 2

61

如果您需要不区分大小写contains,请使用icontains

casas = Casa.objects.filter(nome_fantasia__icontains = 'green')

哪个转换为

... WHERE nome_fantasia ILIKE '%green%'

在 SQL 中。

于 2012-04-05T13:54:08.993 回答
8

老实说,你不需要。两个结果集重叠。如果您打算AND使用最严格的:__iexact. 如果你想OR使用__contains

只是为了回答您的问题,您可以执行以下操作(注意这是一个AND

casas = Casa.objects.filter(nome_fantasia__contains='green', nome_fantasia__iexact='green')
于 2012-04-05T13:56:19.137 回答