У меня есть экземпляр django 1.2.1, работающий в Ubuntu с бэкэндом mysql 5. Я пытаюсь сделать запрос с учетом регистра, который должен возвращать только один результат, но я получаю два результата с одинаковым содержанием, но с разными случаями.
Я хочу получить запись со следующим заголовком:
Синдром кота в интернете
Поэтому я использую следующий запрос:
c = Change.objects.filter(change_type='new',title__exact='Cat on the Internet syndrome')
и я получаю следующие результаты:
>>> c
[<Change: Change object>, <Change: Change object>]
Названия каждого объекта изменения:
>>> for i in c:
... print i.title
...
Cat on the Internet Syndrome
Cat on the Internet syndrome
Как вы можете видеть, S в синдроме в названии каждого объекта имеет другой случай для S в синдроме. Из прочтения документации [0] у меня сложилось впечатление, что все запросы по умолчанию имеют «точный» тип. Я получаю те же результаты, когда не указываю title__exact='Cat on the Internet syndrome'
.
Как мне обеспечить использование чувствительности к регистру в запросе, который я описал выше?
[0] http://docs.djangoproject.com/en/dev/ref/models/querysets/#std:fieldlookup-exact
Edit:
Mysql версия:
mysql Ver 14.14 Distrib 5.1.41, for debian-linux-gnu (i486) using readline 6.1