Bir süredir mongo kullanıyorum (python, mongo 2.4.4 64 bit, OS X 10.8.2, pymongo 2.5.2, python 2.7.2 ile)) ve garip bir davranış gözlemledim.InvalidDocument: Nesne kod olamaz: ObjectId ('51861bc79bb6550f2b98be23')
nesneyi kodlanamadı: objectId ('51861bc79bb6550f2b98be23')
... "/ Users/nutrina/www/env_pdf_admin_apache/lib bir koleksiyona bir belge eklemeye çalışırken Bazen istisna aşağıdaki atıyor /python2.7/site-packages/pymongo/collection.py ", satır 266, kaydetme dönüşünde self.insert (to_save, işleme, güvenli, check_keys, ** kwargs) Dosya "/Kullanıcılar/nutrina/www/env_pdf_admin_apache/lib/python2.7/site-paketleri/pymongo/collection.py ", satır 357, ekleme içinde continue_on_error, self .__ uuid_subtype), güvenli) Geçersiz ocument: nesneyi kodlanamadı: objectId ('51861bc79bb6550f2b98be23')
Ben bu neden oluyor hiçbir fikrim yok. Bu hatayla karşılaşan başka biri var mı, yoksa birisinin neden kaynaklanabileceği konusunda bir fikri var mı?
Güncelleme: Ben kurtarmaya çalışıyorum nesne yapısı aşağıdaki sahiptir:
{
'is_open': true, // boolean
'data': {
'user_id': ObjectId(...), // ObjectId
'user_type': 1, // Integer
}
}
hata alanına * user_id * için rapor ama değer geçerli bir Nesne Kimliği olduğuna eminim edilir. Bu, başka bir koleksiyondan (kullanıcı) gelen bir nesnenin (kullanıcı) '_id' dir. Ve kaydetme işlemi çoğu zaman aynı değerde başarılı olur.
sayesinde Gerald
Paylaşmaya çalıştığınız nesne hakkında başka bir şey var mı? Ne tür veriler içerir? – WiredPrairie
Burada bir göz var http://stackoverflow.com/a/18414699/535962 – lovesh
Sorunun açıklamasını güncelliyorum. @lovesh: Sorunun ilişkili olduğunu sanmıyorum. Eski bir soruyu yeniden canlandırmak için – nutrina