flask-sqlalchemy db获取所有模型

怎么从flask-sqlalchemy db获取所有模型,我通过
for val in db.metadata.tables.items():
print(val)
获取的是table类,通过什么方式可以获取到自己定义的模型类呢

可以参考这里:

我按照这个文档试了,它里面的这个方法_decl_class_registry没找到,这个我在源码里面也没找到,不知道咋用 ,目前我用python的inspect模块实现的

看来那个方法在 1.4 版本移除了。试试下面的方法:

models = {
    mapper.class_.__name__: mapper.class_
    for mapper in db.Model.registry.mappers
}

具体参考这个 issue:

另外这个 issue 里还提到了 model.registry._class_registry 方法,也可以试一下。