BackendProxy
类私有源码
proxy = BackendProxy[M1, M2](
fsa: M1,
fsa_lite: M2,
)
作为代理的类,用来维护动态加载的模块。
对于该类的实例,其属性是可修改的,从而允许在特定需要出现时、动态修改其所维护的模块。
危险
该类仅在内部使用。用户不应使用它。
若用户希望访问模块的代理,请使用fsc.backends.proxy
。
参数
参数 | 类型 | 必选 | |
---|---|---|---|
fsa | M1 | 模块或模块占位符。若模块可用,该模块应当是flask_sqlalchemy 。 | |
fsa_lite | M2 | 模块或模块占位符。若模块可用,该模块应当是flask_sqlalchemy_lite |
- 其中,
M1
和M2
都是ModuleType
的TypeVar
。
属性
fsa
import flask_sqlalchemy
fsa: module("flask_sqlalchemy") | ModulePlaceholder = proxy.fsa
new_fsa: module("flask_sqlalchemy") | True | False | None
proxy.fsa = new_fsa
指向flask_sqlalchemy
的引用。
该值可以被修改为True
,False
,或None
。若修改为True
,则会试图将该属性复原到本模块包刚完成加载后的状态。若修改为False
或None
,则该属性会变更为占位符。
fsa_lite
import flask_sqlalchemy_lite
fsa_lite: module("flask_sqlalchemy_lite") | ModulePlaceholder = proxy.fsa_lite
new_fsa_lite: module("flask_sqlalchemy_lite") | True | False | None
proxy.fsa_lite = new_fsa_lite
指向flask_sqlalchemy_lite
的引用。
该值可以修改为True
,False
,或None
。若修改为True
,则会试图将该属性复原到本模块包刚完成加载后的状态。若修改为False
或None
,则该属性会变更为占位符。