Pymon go Не может взять целочисленный идентификатор, который был сделан Node.JS - PullRequest
0 голосов
/ 24 марта 2020

У меня есть Mon go БД Коллекции, созданные Node.JS _id, были созданы с помощью целого числа с автоматическим приращением (не ID объекта Pymon go)

У меня нет проблем при запросе другого поле в документе, такое как электронная почта, имя (не ключ). Однако я пытаюсь получить документ при использовании _id, как показано ниже: запрос

user_id = 1234 // only integer
users = db.find_one({_id : user_id}

Python Возврат Нет результата, даже если он существует в документе и коллекции абсолютно.

Я думаю, Pymon go не может поддерживать _id, который состоит только из целого числа. Это правильно?

Не могли бы вы посоветовать мне, как это решить ..

1 Ответ

0 голосов
/ 24 марта 2020

Попробуйте:

from bson.objectid import ObjectId

user_id = str(1234)
user = db.find_one({"_id" : ObjectId(user_id)})

Я нашел это в документах:

Обычная задача в веб-приложениях - получить ObjectId из URL-адреса запроса и найти соответствующий документ. , В этом случае необходимо преобразовать ObjectId из строки перед передачей в find_one

Пожалуйста, посмотрите оригинал здесь

...