J'ai importé des documents wikipedia en MongoDB avec le type int champ "_id" (ils sont les pageids pour la page wikipedia):récupérer des documents MongoDB avec int comme _id
> db.wiki_page_id.find()
{ "_id" : 10, "page_title" : "AccessibleComputing" }
{ "_id" : 12, "page_title" : "Anarchism" }
J'utilise Mongoengine avec Django, et J'ai de la difficulté à récupérer les documents que j'ai importés. Lorsque j'utilise le code suivant:
page_id_doc = WikiPageId.objects(id=10)[0]
il signale cette erreur:
u'10' is not a valid ObjectId, it must be a 12-byte input of type 'str' or a 24-character hex string
Lorsque j'utilise la classe bson.objectid.ObjectId
comme ceci:
page_id_doc = WikiPageId.objects(id=ObjectId(10))[0]
Il signale l'erreur suivante:
id must be an instance of (str, unicode, ObjectId), not <type 'int'>
I Y at-il un moyen de contourner ce problème?
Merci!
Merci, ça fonctionne comme un charme! – moonkey