| 123456789101112131415161718192021222324252627 | from sqlalchemy import CHAR, TypeDecoratorfrom sqlalchemy.dialects.postgresql import UUIDclass StringUUID(TypeDecorator):    impl = CHAR    cache_ok = True    def process_bind_param(self, value, dialect):        if value is None:            return value        elif dialect.name == "postgresql":            return str(value)        else:            return value.hex    def load_dialect_impl(self, dialect):        if dialect.name == "postgresql":            return dialect.type_descriptor(UUID())        else:            return dialect.type_descriptor(CHAR(36))    def process_result_value(self, value, dialect):        if value is None:            return value        return str(value)
 |