get_flask_sqlalchemy_proxy_ver
函数源码
db: SQLAlchemyProxy[
flask_sqlalchemy_lite.SQLAlchemy, _ModelLite
] = get_flask_sqlalchemy_proxy_ver[_ModelLite](
model_class: type[_ModelLite],
app: Flask | None = None,
engine_options: Mapping[str, Any] | None = None,
session_options: Mapping[str, Any] | None = None,
)
get_flask_sqlalchemy
注解为代理的版本。
该函数的用法和返回值都和get_flask_sqlalchemy
全然相同。然而,该用法的第一个返回值会被刻意注解为SQLAlchemyProxy
。这是为了帮助开发者了解兼容状态下的版本支持哪些功能。
别名
该函数可以按以下方式之一获取
import flask_sqlalchemy_compat as fsc
fsc.get_flask_sqlalchemy_proxy_ver
fsc.auto.get_flask_sqlalchemy_proxy_ver
参数
输入
参数 | 类型 | 必选 | |
---|---|---|---|
model_class | type[_ModelLite] | 应用到整个数据库的基础 ORM 模型类型。若flask_sqlalchemy 可用,该类型将会作为model_class 传递给数据库扩展实例的构造函数,并用来创建扩展实例所持有的基模型类。不过,若数据库对象退回到了flask_sqlalchemy_lite 提供的版本,该类型将会受到原处修改,以便其能支持flask_sqlalchemy.SQLAlchemy().Model 的特性。 | |
app | Flask | None | 向该 Flask 应用调用init_app 方法。若未指定该值,则不会调用init_app 。 | |
engine_options | Mapping[str, Any] | None | 该配置将会在创建每个引擎时,传递给构造函数sqlalchemy.create_engine 。 | |
session_options | Mapping[str, Any] | None | 用来配置sessionmaker 的参数。 |
- 其中,
_ModelLite
是sa.orm.DeclarativeBase
的TypeVar
。
输出
参数 | 类型 | |
---|---|---|
db | SQLAlchemyProxy[flask_sqlalchemy_lite.SQLAlchemy, _ModelLite] | SQLAlchemy扩展实例。在运行时,它与 然而,该返回值永远被注解为 |