enumcolumn.py 文件源码

python
阅读 23 收藏 0 点赞 0 评论 0

项目:clickhouse-driver 作者: mymarilyn 项目源码 文件源码
def before_write_item(self, value):
        source_value = value.name if isinstance(value, Enum) else value
        enum_cls = self.enum_cls

        # Check real enum value
        try:
            if isinstance(source_value, compat.string_types):
                return enum_cls[source_value].value
            else:
                return enum_cls(source_value).value

        except (ValueError, KeyError):
            choices = ', '.join(
                "'{}' = {}".format(x.name, x.value) for x in enum_cls
            )
            enum_str = '{}({})'.format(enum_cls.__name__, choices)

            raise errors.LogicalError(
                "Unknown element '{}' for type {}"
                .format(source_value, enum_str)
            )
评论列表


问题


面经


文章

微信
公众号

扫码关注公众号