ModelProtocol
类型源码
model: ModelProtocol
和flask_sqlalchemy.extensions._FSAModel
兼容的协议。
该协议涵盖了模型原型所具备的大致功能。Flask SQLAlchemy并不使用原生的SQLAlchemy基模型,而是定义了它自己的版本。这就是需要该协议来处理兼容性问题的原因。
须知为了同时和一个来自SQLAlchemy的普通基模型兼容,该协议并不涵盖Flask SQLAlchemy模型的所有功能。
别名
该类型可以按以下方式之一获取
import flask_sqlalchemy_compat as fsc
fsc.ModelProtocol
fsc.protocols.ModelProtocol
协议属性
query_class
model.query_class: ClassVar[type[Any]]
query
所使用的Query类。默认值为flask_sqlalchemy.SQLAlchemy.Query
。
query_class
model.query: ClassVar[Any]
某个模型的SQLAlchemy query,等价于db.session.query(Model)
。可以透过重载query_class
来为各模型定制query的功能。
metadata
model.metadata: sa.MetaData
为flask_sqlalchemy.SQLAlchemy
实例合成的元数据属性。