class User(Document): __collection__ = 'users' index = IntField(required=True) email = StringField(required=True) first_name = StringField( db_field="whatever", max_length=50, default=lambda: "Bernardo" ) last_name = StringField(max_length=50, default="Heynemann") is_admin = BooleanField(default=True) website = URLField(default="http://google.com/") updated_at = DateTimeField( required=True, auto_now_on_insert=True, auto_now_on_update=True ) embedded = EmbeddedDocumentField( EmbeddedDocument, db_field="embedded_document" ) nullable = EmbeddedDocumentField( EmbeddedDocument, db_field="nullable_embedded_document" ) numbers = ListField(IntField()) posts = ListField(ReferenceField(reference_document_type=Post)) def __repr__(self): return "%s %s <%s>" % (self.first_name, self.last_name, self.email)
class User(Document): email = StringField(required=True) first_name = StringField(max_length=50, default=lambda: "Bernardo") last_name = StringField(max_length=50, default="Heynemann") is_admin = BooleanField(default=True) website = URLField(default="http://google.com/") updated_at = DateTimeField(required=True, auto_now_on_insert=True, auto_now_on_update=True) def __repr__(self): return "%s %s <%s>" % (self.first_name, self.last_name, self.email)
def test_create_url_field(self): field = URLField(db_field="test", required=True) expect(field.db_field).to_equal("test") expect(field.required).to_be_true()
def test_validate_enforces_URLs(self): field = URLField() expect(field.validate("some non url")).to_be_false() expect(field.validate("http://www.globo.com/")).to_be_true()
def test_none_from_son(self): field = URLField() expect(field.from_son(None)).to_be_null()