class Sample(Collection): __collection__ = 'collection' __engine__ = {'mmapv1': {}} id = None # Remove the default identifier. field = Field() other = Field() _field = Index('field', background=False)
class Sample(Document): class Embedded(Document): name = String() generic = Field() field = String('field_name') number = Number('field_name', default=27) array = Array(Number(default=42), name='field_name') embed = Embed(Embedded)
class Sample(Document): field = Field() number = Number() array = Array()
class Sample(Document): field = Field() number = Number('other')
class Person(Document): name = Field() age = Field(default=42, assign=True)
class Sample(Document): field = Field('field_name') other = Field('other_field') _field = Index('field', background=False) _inverse = Index('-field', background=False)
class Sample(Collection): field = Field(project=True) number = Number('other')
class NoProjection(Collection): id = None default = Field()
class RejectOnly(Collection): id = None default = Field() never = Field(project=False)
class OnlyProjected(Collection): id = None default = Field() always = Field(project=True)
class Inner(Document): field = Field()
class Inner(Document): last = Field() first = Field()