From 4bd7160a182bf0175b0b6a46c298375c38e2df69 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20=27Necoro=27=20Neumann?= Date: Wed, 4 Oct 2017 00:29:40 +0200 Subject: Move CompressedField to peewee_ext.py --- archivist/model.py | 10 +--------- archivist/peewee_ext.py | 8 ++++++++ 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/archivist/model.py b/archivist/model.py index d660218..2d9476a 100644 --- a/archivist/model.py +++ b/archivist/model.py @@ -1,5 +1,4 @@ from peewee import * -from playhouse.fields import CompressedField as _CompressedField from playhouse.hybrid import * from playhouse.sqlite_ext import SqliteExtDatabase, ClosureTable @@ -9,7 +8,7 @@ import datetime from enum import Enum, unique from pkg_resources import resource_filename -from .peewee_ext import EnumField, SQLIndex +from .peewee_ext import EnumField, CompressedField, SQLIndex from .peewee_fixes import * # dummy to force evaluation of those fixes db = SqliteExtDatabase('test.db', pragmas=[('foreign_keys', 'ON')]) @@ -56,13 +55,6 @@ class BaseModel(Model): class Meta: database = db -class CompressedField(_CompressedField): - def db_value(self, value): - return value if value is None else self.compress(value) - - def python_value(self, value): - return value if value is None else self.decompress(value) - @table class DocumentContent(BaseModel): blob = CompressedField() diff --git a/archivist/peewee_ext.py b/archivist/peewee_ext.py index ff03861..edcb9c9 100644 --- a/archivist/peewee_ext.py +++ b/archivist/peewee_ext.py @@ -1,4 +1,5 @@ from peewee import Field, SQL +from playhouse.fields import CompressedField as _CompressedField from itertools import starmap from functools import reduce @@ -10,6 +11,13 @@ def sqlite_tuple_in(fields, values): subqueries = (reduce(op.and_, starmap(op.eq, zip(fields, value_tuple))) for value_tuple in values) return reduce(op.or_, subqueries) +class CompressedField(_CompressedField): + def db_value(self, value): + return value if value is None else self.compress(value) + + def python_value(self, value): + return value if value is None else self.decompress(value) + class EnumField(Field): db_field = 'enum' -- cgit v1.2.3