我想执行一个简单的查询:
Pizza.object.filter(topping__contains='PEPERONI')
像这样,它可以完美运行。但是如果我尝试这样做:
Pizza.object.filter(topping__contains='peperoni')
它不起作用。
你知道为什么它区分大小写吗?有没有办法从Django取消这个功能?
我想执行一个简单的查询:
Pizza.object.filter(topping__contains='PEPERONI')
像这样,它可以完美运行。但是如果我尝试这样做:
Pizza.object.filter(topping__contains='peperoni')
它不起作用。
你知道为什么它区分大小写吗?有没有办法从Django取消这个功能?
Q
对象:from django.db.models import Q
Resulting_Queryset = MyModel.objects.filter(Q(name__istartswith='Nishank Gupta'.strip().lower()) & Q(name__iendswith='Nishank Gupta'.strip().lower()))
Nishank Gupta
、Nishank GUPTA
、NisHANnk Gupta
等内容。希望能对您有所帮助。请让我知道您的看法。MyModel.objects.filter(name__iexact='Nishank Gupta'.strip().lower())
istartswith
、iexact
等函数时,不需要使用lower()
。 - Domenico Spidy Tamburro