diff --git a/mautrix_telegram/db/base.py b/mautrix_telegram/db/base.py index a91cc82c..bbca82a7 100644 --- a/mautrix_telegram/db/base.py +++ b/mautrix_telegram/db/base.py @@ -20,11 +20,10 @@ from sqlalchemy import Table from sqlalchemy.engine.base import Engine from sqlalchemy.engine.result import RowProxy from sqlalchemy.sql.base import ImmutableColumnCollection -from sqlalchemy.ext.declarative import as_declarative +from sqlalchemy.ext.declarative import declarative_base -@as_declarative() -class Base: +class BaseBase: db = None # type: Engine t = None # type: Table __table__ = None # type: Table @@ -55,3 +54,5 @@ class Base: def delete(self) -> None: with self.db.begin() as conn: conn.execute(self.t.delete().where(self._edit_identity)) + +Base = declarative_base(cls=BaseBase) diff --git a/mautrix_telegram/scripts/dbms_migrate/__main__.py b/mautrix_telegram/scripts/dbms_migrate/__main__.py index 72dc1ce6..e9edfffd 100644 --- a/mautrix_telegram/scripts/dbms_migrate/__main__.py +++ b/mautrix_telegram/scripts/dbms_migrate/__main__.py @@ -23,6 +23,7 @@ def log(message, end="\n"): def connect(to): import mautrix_telegram.db.base as base + base.Base = declarative_base(cls=base.BaseBase) from mautrix_telegram.db import (Portal, Message, UserPortal, User, RoomState, UserProfile, Contact, Puppet, BotChat, TelegramFile) db_engine = sql.create_engine(to)