From 399679d181eb50e07427c35bdb047f98a8a3d143 Mon Sep 17 00:00:00 2001 From: Leander Karp <karp@cl.uni-heidelberg.de> Date: Wed, 4 Sep 2024 15:30:02 +0200 Subject: [PATCH] Fix SQLAlchemy-related type errors --- portal/__init__.py | 2 +- portal/model/FlaskConfigEntry.py | 5 ++++- portal/model/Retrievable.py | 7 +++++-- 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/portal/__init__.py b/portal/__init__.py index 642054e..99937d5 100644 --- a/portal/__init__.py +++ b/portal/__init__.py @@ -9,7 +9,7 @@ from flask_sqlalchemy import SQLAlchemy from .db_config import get_database_uri, get_uri_for_sqlite -db = SQLAlchemy() +db: SQLAlchemy = SQLAlchemy() from .model import * diff --git a/portal/model/FlaskConfigEntry.py b/portal/model/FlaskConfigEntry.py index 378aed8..96a53ba 100644 --- a/portal/model/FlaskConfigEntry.py +++ b/portal/model/FlaskConfigEntry.py @@ -1,9 +1,12 @@ from flask import Flask +from typing import Any from portal import db +BaseModel: Any = db.Model -class FlaskConfigEntry(db.Model): + +class FlaskConfigEntry(BaseModel): """ A configuration entry for Flask (a key-value pair) as persisted in a database """ diff --git a/portal/model/Retrievable.py b/portal/model/Retrievable.py index 1b7c649..4608b14 100644 --- a/portal/model/Retrievable.py +++ b/portal/model/Retrievable.py @@ -1,12 +1,15 @@ from abc import abstractmethod from typing import Any, List, Optional, Self +from sqlalchemy import Column from flask import g from portal import db +BaseModel: Any = db.Model -class Retrievable(db.Model): + +class Retrievable(BaseModel): """ A type whose instances can be retrieved from the database. @@ -17,7 +20,7 @@ class Retrievable(db.Model): __abstract__ = True @classmethod - def get_canonical_order_column(cls) -> Optional[db.Column]: + def get_canonical_order_column(cls) -> Optional[Column]: """ Return the colum by which instances of this type should be canonically ordered when retrieving them all from the database. -- GitLab