Updates to documents

[#245]
This commit is contained in:
Ross Lawley 2011-09-09 14:33:27 +01:00
parent 2bc3948726
commit b8a5791de6
2 changed files with 11 additions and 2 deletions

View File

@ -50,6 +50,7 @@ are as follows:
* :class:`~mongoengine.ReferenceField`
* :class:`~mongoengine.GenericReferenceField`
* :class:`~mongoengine.EmbeddedDocumentField`
* :class:`~mongoengine.GenericEmbeddedDocumentField`
* :class:`~mongoengine.BooleanField`
* :class:`~mongoengine.FileField`
* :class:`~mongoengine.BinaryField`

View File

@ -374,8 +374,8 @@ class ComplexDateTimeField(StringField):
class EmbeddedDocumentField(BaseField):
"""An embedded document field. Only valid values are subclasses of
:class:`~mongoengine.EmbeddedDocument`.
"""An embedded document field - with a declared document_type.
Only valid values are subclasses of :class:`~mongoengine.EmbeddedDocument`.
"""
def __init__(self, document_type, **kwargs):
@ -421,7 +421,14 @@ class EmbeddedDocumentField(BaseField):
def prepare_query_value(self, op, value):
return self.to_mongo(value)
class GenericEmbeddedDocumentField(BaseField):
"""A generic embedded document field - allows any
:class:`~mongoengine.EmbeddedDocument` to be stored.
Only valid values are subclasses of :class:`~mongoengine.EmbeddedDocument`.
"""
def prepare_query_value(self, op, value):
return self.to_mongo(value)
@ -448,6 +455,7 @@ class GenericEmbeddedDocumentField(BaseField):
data['_cls'] = document._class_name
return data
class ListField(ComplexBaseField):
"""A list field that wraps a standard field, allowing multiple instances
of the field to be used as a list in the database.