Source code for aiomotorengine.fields.uuid_field

from uuid import UUID

import six

from aiomotorengine.fields.base_field import BaseField


[docs]class UUIDField(BaseField): ''' Field responsible for storing :py:class:`uuid.UUID`. Usage: .. testcode:: modeling_fields name = UUIDField(required=True) ''' def validate(self, value): if value is None: return True if isinstance(value, UUID): return True if isinstance(value, six.string_types): try: UUID(value) return True except TypeError: pass except ValueError: pass return False def is_empty(self, value): return value is None or str(value) == "" def to_son(self, value): if isinstance(value, six.string_types): return UUID(value) return value