Python mongoengine.ListField() Examples
The following are 7
code examples of mongoengine.ListField().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
mongoengine
, or try the search function
.
Example #1
Source File: test_fields.py From marshmallow-mongoengine with MIT License | 6 votes |
def test_ListField(self): class Doc(me.Document): list = me.ListField(me.StringField()) fields_ = fields_for_model(Doc) assert type(fields_['list']) is fields.List class DocSchema(ModelSchema): class Meta: model = Doc list_ = ['A', 'B', 'C'] doc = Doc(list=list_) dump = DocSchema().dump(doc) assert not dump.errors assert dump.data == {'list': list_} load = DocSchema().load(dump.data) assert not load.errors assert load.data.list == list_
Example #2
Source File: test_fields.py From marshmallow-mongoengine with MIT License | 6 votes |
def test_ListSpecialField(self): class NestedDoc(me.EmbeddedDocument): field = me.StringField() class Doc(me.Document): list = me.ListField(me.EmbeddedDocumentField(NestedDoc)) fields_ = fields_for_model(Doc) assert type(fields_['list']) is fields.List assert type(fields_['list'].container) is fields.Nested class DocSchema(ModelSchema): class Meta: model = Doc list_ = [{'field': 'A'}, {'field': 'B'}, {'field': 'C'}] doc = Doc(list=list_) dump = DocSchema().dump(doc) assert not dump.errors assert dump.data == {'list': list_} load = DocSchema().load(dump.data) assert not load.errors for i, elem in enumerate(list_): assert load.data.list[i].field == elem['field']
Example #3
Source File: test_marshmallow_mongoengine.py From marshmallow-mongoengine with MIT License | 6 votes |
def models(): class HeadTeacher(me.EmbeddedDocument): full_name = me.StringField(max_length=255, unique=True, default='noname') class Course(me.Document): id = me.IntField(primary_key=True) name = me.StringField() # These are for better model form testing cost = me.IntField() description = me.StringField() level = me.StringField(choices=('Primary', 'Secondary')) prereqs = me.DictField() started = me.DateTimeField() grade = AnotherIntegerField() students = me.ListField(me.ReferenceField('Student')) class School(me.Document): name = me.StringField() students = me.ListField(me.ReferenceField('Student')) headteacher = me.EmbeddedDocumentField(HeadTeacher) class Student(me.Document): full_name = me.StringField(max_length=255, unique=True, default='noname') age = me.IntField(min_value=10, max_value=99) dob = me.DateTimeField(null=True) date_created = me.DateTimeField(default=dt.datetime.utcnow, help_text='date the student was created') current_school = me.ReferenceField('School') courses = me.ListField(me.ReferenceField('Course')) email = me.EmailField(max_length=100) profile_uri = me.URLField(max_length=200) # So that we can access models with dot-notation, e.g. models.Course class _models(object): def __init__(self): self.HeadTeacher = HeadTeacher self.Course = Course self.School = School self.Student = Student return _models()
Example #4
Source File: test_skip.py From marshmallow-mongoengine with MIT License | 5 votes |
def test_skip_none_field(self): class Doc(me.Document): field_not_empty = me.StringField(default='value') field_empty = me.StringField() list_empty = me.ListField(me.StringField()) class DocSchema(ModelSchema): class Meta: model = Doc doc = Doc() dump = DocSchema().dump(doc) assert not dump.errors assert dump.data == {'field_not_empty': 'value'}
Example #5
Source File: test_skip.py From marshmallow-mongoengine with MIT License | 5 votes |
def test_disable_skip_none_field(self): class Doc(me.Document): field_empty = me.StringField() list_empty = me.ListField(me.StringField()) class DocSchema(ModelSchema): class Meta: model = Doc model_skip_values = () doc = Doc() data, errors = DocSchema().dump(doc) assert not errors assert data == {'field_empty': None, 'list_empty': []}
Example #6
Source File: test_converter.py From graphene-mongo with MIT License | 5 votes |
def test_should_field_convert_list(): assert_conversion( mongoengine.ListField, graphene.List, field=mongoengine.StringField() )
Example #7
Source File: types.py From graphene-mongo with MIT License | 5 votes |
def construct_fields(model, registry, only_fields, exclude_fields): """ Args: model (mongoengine.Document): registry (graphene_mongo.registry.Registry): only_fields ([str]): exclude_fields ([str]): Returns: (OrderedDict, OrderedDict): converted fields and self reference fields. """ _model_fields = get_model_fields(model) fields = OrderedDict() self_referenced = OrderedDict() for name, field in _model_fields.items(): is_not_in_only = only_fields and name not in only_fields is_excluded = name in exclude_fields if is_not_in_only or is_excluded: # We skip this field if we specify only_fields and is not # in there. Or when we exclude this field in exclude_fields continue if isinstance(field, mongoengine.ListField): if not field.field: continue # Take care of list of self-reference. document_type_obj = field.field.__dict__.get("document_type_obj", None) if ( document_type_obj == model._class_name or isinstance(document_type_obj, model) or document_type_obj == model ): self_referenced[name] = field continue converted = convert_mongoengine_field(field, registry) if not converted: continue fields[name] = converted return fields, self_referenced