У меня проблема с получением объекта из экземпляра mongodb
. Если я ищу этот объект с pymongo
интерфейсом, все в порядке - объект может быть найден. Если попытаться сделать то же самое с pymodm
- произойдет сбой с ошибкой.
Вот что я делаю:
from pymodm import connect, MongoModel, fields
from pymongo import MongoClient
class detection_object(MongoModel):
legacy_id = fields.IntegerField()
client = MongoClient(MONGODB_URI)
db = client[MONGODB_DEFAULT_SCHEME]
collection = db['detection_object']
do = collection.find_one({'legacy_id': 1437424})
print(do)
connect(MONGODB_URI)
do = detection_object.objects.raw({'legacy_id': 1437424}).first()
print(do)
Первый вывод выводит это: {'_id': ObjectId('5c4099dcffa4fb11494d983d'), 'legacy_id': 1437424}
. Однако во время выполнения этой команды: do = detection_object.objects.raw({'legacy_id': 1437424}).first()
интерпретатор завершается со следующей ошибкой:
Traceback (most recent call last):
File "/usr/local/lib/python3.7/site-packages/pymodm/queryset.py", line 127, in first
return next(iter(self.limit(-1)))
StopIteration
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/konsof01/PycharmProjects/testthisfuckingshit/settings.py", line 29, in <module>
do = detection_object.objects.raw({'legacy_id': 1437424}).first()
File "/usr/local/lib/python3.7/site-packages/pymodm/queryset.py", line 129, in first
raise self._model.DoesNotExist()
__main__.DoesNotExist
Как это может быть? Я пытаюсь запросить тот же объект, с тем же соединением и коллекцией. Есть идеи, пожалуйста?