Я использую Pymongo для доступа к Mongo db. Я хочу найти всех людей рядом с указанным местоположением, имя которого содержит строку. Например, я хочу найти всех людей поблизости [105.0133, 21.3434] и имя содержит «Mark». Поэтому я пишу запрос так:
db.users.find({ "location.coords": { "$nearSphere": [105.0133, 21.3434], "$maxDistance": 10/EARTH_RADIUS }, "name": "/Mark/" })
(у меня есть индекс "location.coords" в моей коллекции "users")
Запрос отлично работает в консоли Mongodb, но при выполнении Pymongo словарь пересортируется следующим образом:
{ "name": "/Mark/", "location.coords": { "$nearSphere": [105.0133, 21.3434], "$maxDistance": 10/EARTH_RADIUS } }
(ключ "name" находится перед "location.coords", это не то, что я ожидал - также ожидал Mongodb)
Это приводит к тому, что Mongodb не может понять запрос и не возвращает результатов. Может кто-нибудь помочь мне разобраться, как заставить Пимонго не пересортировать мой словарь.
Спасибо и всего наилучшего