python - 我对 SQLalchemy declarative_base 使用什么类型?

标签 python sqlalchemy python-typing

我想为我的 SQLAlchemy 基类使用类型,但似乎找不到类型定义。

例如:

from sqlalchemy.types import BigInteger
from sqlalchemy.schema import Column, Index
from sqlalchemy.ext.declarative import declarative_base

Base = declarative_base()

class User(Base):

    __tablename__ = "users"

    id_user = Column(
        BigInteger, primary_key=True, autoincrement=True, nullable=False, index=True
    )
    username = Column(String, unique=True, index=True)


现在在引用这个 User 类时,我不知道使用什么类型。此外,如果我想要一个包含 table_name 的字典:模型映射,如:
from typing import Any, Dict

table_model_map: Dict[str, Any] = {
    "users": User,
    "another_table": AnotherTableModel,
}


我将如何定义此 Dict 的类型

非常感谢您帮助我理解这一点!

最佳答案

Base是所有模型(也是类型)继承的类型,所以

Dict[str, Base]

关于python - 我对 SQLalchemy declarative_base 使用什么类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58325495/

相关文章:

javascript - 在 iPhone、Python Flask-SocketIO 和 Javascript 上测试 websocket 应用程序

python - 尝试交换列表中的位置

python - 是否有 "if command"来识别我的 sqlalchemy sqlite 查询命令是否为空?

python - 在具有泛型类型的类中定义的数据类的类型提示

python - 如何合并字符串包含的 Pandas 并进行多个匹配?

python - 使用 python 从 .txt 文件中提取数据

python - Typing.NamedTuple 和可变默认参数

python - 什么是变量注解?

python - sqlalchemy 分页

python - 监听简单表上的插入/更新事件