Implemented Choices for GenericEmbeddedDocuments

Refs mongoengine/mongoengine#13
This commit is contained in:
Ross Lawley
2012-05-09 12:58:45 +01:00
parent debfcdf498
commit aeebdfec51
4 changed files with 64 additions and 10 deletions

View File

@@ -659,7 +659,7 @@ class ReferenceField(BaseField):
def to_mongo(self, document):
if isinstance(document, DBRef):
return document
id_field_name = self.document_type._meta['id_field']
id_field = self.document_type._fields[id_field_name]
@@ -734,9 +734,9 @@ class GenericReferenceField(BaseField):
def to_mongo(self, document):
if document is None:
return None
if isinstance(document, (dict, SON)):
return document
return document
id_field_name = document.__class__._meta['id_field']
id_field = document.__class__._fields[id_field_name]