From a3bd21213331fa45fd3f7f9222273a2d01424f7e Mon Sep 17 00:00:00 2001 From: Itai Shirav Date: Thu, 30 Jun 2016 16:17:53 +0300 Subject: [PATCH] Simplify conversion of int and float fields --- src/infi/clickhouse_orm/fields.py | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/src/infi/clickhouse_orm/fields.py b/src/infi/clickhouse_orm/fields.py index 2829910..44e833a 100644 --- a/src/infi/clickhouse_orm/fields.py +++ b/src/infi/clickhouse_orm/fields.py @@ -108,11 +108,10 @@ class DateTimeField(Field): class BaseIntField(Field): def to_python(self, value): - if isinstance(value, int): - return value - if isinstance(value, basestring): + try: return int(value) - raise ValueError('Invalid value for %s - %r' % (self.__class__.__name__, value)) + except: + raise ValueError('Invalid value for %s - %r' % (self.__class__.__name__, value)) def validate(self, value): self._range_check(value, self.min_value, self.max_value) @@ -177,11 +176,10 @@ class Int64Field(BaseIntField): class BaseFloatField(Field): def to_python(self, value): - if isinstance(value, float): - return value - if isinstance(value, basestring) or isinstance(value, int): + try: return float(value) - raise ValueError('Invalid value for %s - %r' % (self.__class__.__name__, value)) + except: + raise ValueError('Invalid value for %s - %r' % (self.__class__.__name__, value)) class Float32Field(BaseFloatField):