如何将 SQLAlchemy ORM 模型传递给 Python Generic[T] class
How to pass a SQLAlchemy ORM model to Python Generic[T] class
我正在尝试使用 SQLAlchemy 和 python 泛型创建实体架构,即模型 -> 存储库 -> API
我有以下用户模型:
class User(db.Model):
id
username
email
...
以下存储库代码:
class UserRepository(Repository[User]):
pass
我正在尝试找到一种可以从 Repository 基础 class 中“访问”用户模型的方法,例如:
T = TypeVar('T')
class Repository(Generic[T]):
@staticmethod
def get(id) -> T:
return T.query.filter(...)
也尝试过 db.session.query(...)
但没有成功。
有什么想法吗?
谢谢。
在class变量的帮助下设法解决了它
class XRepository(BaseRepository):
model = X
class YRepository(BaseRepository):
model = Y
class BaseRepository:
@classmethod
def get(cls):
return cls.model.query.filter(...)
我正在尝试使用 SQLAlchemy 和 python 泛型创建实体架构,即模型 -> 存储库 -> API
我有以下用户模型:
class User(db.Model):
id
username
email
...
以下存储库代码:
class UserRepository(Repository[User]):
pass
我正在尝试找到一种可以从 Repository 基础 class 中“访问”用户模型的方法,例如:
T = TypeVar('T')
class Repository(Generic[T]):
@staticmethod
def get(id) -> T:
return T.query.filter(...)
也尝试过 db.session.query(...)
但没有成功。
有什么想法吗?
谢谢。
在class变量的帮助下设法解决了它
class XRepository(BaseRepository):
model = X
class YRepository(BaseRepository):
model = Y
class BaseRepository:
@classmethod
def get(cls):
return cls.model.query.filter(...)