Я наблюдал монго-документы, для которых document[field]
возвращает {}
, но я не могу создать такой документ. Пример:
import mongoengine
mongoengine.connect('FOO', host='localhost', port=27017)
class Foo(mongoengine.Document):
some_dict = mongoengine.DictField()
message = mongoengine.StringField()
ID = '59b97ec7c5d65e0c4740b886'
foo = Foo()
foo.some_dict = {}
foo.id = ID
foo.save()
Но когда я запрашиваю запись, some_dict
отсутствует среди полей, поэтому последняя строка выдает ошибку:
import pymongo
CON = pymongo.MongoClient('localhost',27017)
x = CON.FOO.foo.find_one()
assert str(x['_id']) == ID
assert 'some_dict' in x.keys()