У меня есть коллекция пользователей, и одно из полей документа называется leaderboard_name
. Это текстовое поле, и я хочу иметь возможность запрашивать его без учета регистра.
Поэтому я создал новый индекс с настраиваемым сопоставлением, следуя Пн go документам . Я создал это, используя компас GUI, и установил locale = en, сила = 1 и оставил все остальное по умолчанию:
У меня есть следующее документ, который я хочу запросить:
{
leaderboard_name: "johndoe"
}
Я ожидал с этим индексом, что смогу запросить JOHNDOE
и найти этот документ, но я не получаю никаких результатов. Только при поиске с соответствующим регистром я получаю совпадение.
Даже в плане объяснения говорится, что в запросе не использовались индексы:
Это MongoDB 4.0.16, и я понимаю, что поддержка сортировки без учета регистра существует примерно с 3.4. Я посмотрел на этот ответ , и кроме использования компаса для создания индекса вместо оболочки go, я думаю, я сделал все остальное так же.