我想写一个查询来搜索myapp模型但是。正如官方Django documentation
和这里link中所述,__exact查找的默认行为如果不能正常工作。Django获取/过滤方法默认精确查找不起作用
例如:
>>> from django.db import models
>>> from girvi.models import State
>>> State.objects.all()
[]
>>> s = State.objects.create(name='Uttar pradesh')
>>> State.objects.get(name='uttar pradesh')
<State: Uttar pradesh>
上面的查询不应该工作。它应该返回[]
因为我要找场name='uttar pradesh' against field
名='北方邦pradesh'`
>>> State.objects.get(name__exact='uttar pradesh')
<State: Uttar pradesh>
>>> State.objects.get(name__iexact='Uttar Pradesh')
<State: Uttar pradesh>
>>> State.objects.get(name__exact='Uttar Pradesh')
<State: Uttar pradesh>
再次相同的行为。
请有人解释给我。我做错了什么。
是的你是对的 – 2014-09-28 17:25:08
我刚刚检查了我的MySQL服务器使用'latin1'作为默认字符集和'latin1_swedish_c1'作为默认排序规则。 – 2014-09-28 17:30:51