Traceback (most recent call last):
File "F:/_Projects/api/development/_tmp/test.py", line 29, in
Confirmation.objects(query).first()
File "F:_Projects\api\development\mongoengine\queryset\base.py", line 309, in first
result = queryset[0]
File "F:_Projects\api\development\mongoengine\queryset\base.py", line 160, in getitem
return queryset._document._from_son(queryset._cursor[key],
File "F:_Projects\api\development\mongoengine\queryset\base.py", line 1409, in _cursor
self._cursor_obj = self._collection.find(self._query,
File "F:_Projects\api\development\mongoengine\queryset\base.py", line 1443, in _query
self._mongo_query = self._query_obj.to_query(self._document)
File "F:_Projects\api\development\mongoengine\queryset\visitor.py", line 92, in to_query
query = self.accept(SimplificationVisitor())
File "F:_Projects\api\development\mongoengine\queryset\visitor.py", line 142, in accept
return visitor.visit_combination(self)
File "F:_Projects\api\development\mongoengine\queryset\visitor.py", line 42, in visit_combination
return Q(self._query_conjunction(queries))
File "F:_Projects\api\development\mongoengine\queryset\visitor.py", line 62, in _query_conjunction
combined_query.update(copy.deepcopy(query))
File "C:\Programming\Python278\Lib\copy.py", line 163, in deepcopy
y = copier(x, memo)
File "C:\Programming\Python278\Lib\copy.py", line 257, in _deepcopy_dict
y[deepcopy(key, memo)] = deepcopy(value, memo)
File "C:\Programming\Python278\Lib\copy.py", line 182, in deepcopy
rv = reductor(2)
File "F:_Projects\api\development\mongoengine\base\document.py", line 192, in getstate
data['_data'] = self.to_mongo()
File "F:_Projects\api\development\mongoengine\base\document.py", line 330, in to_mongo
value = field.to_mongo(value)
File "F:_Projects\api\development\mongoengine\fields.py", line 1078, in to_mongo
self.error('Only accept a document object')
File "F:_Projects\api\development\mongoengine\base\fields.py", line 136, in error
raise ValidationError(message, errors=errors, field_name=field_name)
mongoengine.errors.ValidationError: Only accept a document object**
this happens at line 1066 at CachedReferenceField class defined in mongoengine\fields.py
def to_mongo(self, document):
id_field_name = self.document_type._meta['id_field']
id_field = self.document_type._fields[id_field_name]
doc_tipe = self.document_type
if isinstance(document, Document):
# We need the id from the saved object to create the DBRef
id_ = document.pk
if id_ is None:
self.error('You can only reference documents once they have'
' been saved to the database')
else:
self.error('Only accept a document object')
produces the following error in mongoengine 0.9
Traceback (most recent call last): File "F:/_Projects/api/development/_tmp/test.py", line 29, in
Confirmation.objects(query).first()
File "F:_Projects\api\development\mongoengine\queryset\base.py", line 309, in first
result = queryset[0]
File "F:_Projects\api\development\mongoengine\queryset\base.py", line 160, in getitem
return queryset._document._from_son(queryset._cursor[key],
File "F:_Projects\api\development\mongoengine\queryset\base.py", line 1409, in _cursor
self._cursor_obj = self._collection.find(self._query,
File "F:_Projects\api\development\mongoengine\queryset\base.py", line 1443, in _query
self._mongo_query = self._query_obj.to_query(self._document)
File "F:_Projects\api\development\mongoengine\queryset\visitor.py", line 92, in to_query
query = self.accept(SimplificationVisitor())
File "F:_Projects\api\development\mongoengine\queryset\visitor.py", line 142, in accept
return visitor.visit_combination(self)
File "F:_Projects\api\development\mongoengine\queryset\visitor.py", line 42, in visit_combination
return Q(self._query_conjunction(queries))
File "F:_Projects\api\development\mongoengine\queryset\visitor.py", line 62, in _query_conjunction
combined_query.update(copy.deepcopy(query))
File "C:\Programming\Python278\Lib\copy.py", line 163, in deepcopy
y = copier(x, memo)
File "C:\Programming\Python278\Lib\copy.py", line 257, in _deepcopy_dict
y[deepcopy(key, memo)] = deepcopy(value, memo)
File "C:\Programming\Python278\Lib\copy.py", line 182, in deepcopy
rv = reductor(2)
File "F:_Projects\api\development\mongoengine\base\document.py", line 192, in getstate
data['_data'] = self.to_mongo()
File "F:_Projects\api\development\mongoengine\base\document.py", line 330, in to_mongo
value = field.to_mongo(value)
File "F:_Projects\api\development\mongoengine\fields.py", line 1078, in to_mongo
self.error('Only accept a document object')
File "F:_Projects\api\development\mongoengine\base\fields.py", line 136, in error
raise ValidationError(message, errors=errors, field_name=field_name)
mongoengine.errors.ValidationError: Only accept a document object**
this happens at line 1066 at CachedReferenceField class defined in mongoengine\fields.py
this is screenshoft of debug session: http://snag.gy/UUdsn.jpg