使用flask sqlalchemy访问MySQL表中的所有列

时间:2015-08-27 22:28:19

标签: python flask sqlalchemy flask-sqlalchemy

我正在尝试以字符串或列表格式获取MySQL表的列。

由于我通过主应用程序定义了表,我可以使用dir(table_name)来获取属性列表,但这些属性包含私有属性和其他内置属性,如“query”或“query_class”。过滤这些是可能的,但我试图找到一种更简单的方法来获取列而不通过属性路径。

在阅读flask-sqlalchemy文档和sqlalchemy文档之间,我注意到使用table_name.c将适用于sqlalchelmy。是否有与flask-sqlalchemy等效的产品?

1 个答案:

答案 0 :(得分:2)

Flask-SQLAlchemy对SQLAlchemy方面没有任何帮助,它只是一个包装器,可以更容易地使用Flask以及一些便利功能。你可以inspect orm objects以正常的方式行事。例如,inspecting a model returns its mapper

m = db.inspect(MyModel)
# all orm attributes
print(list(m.all_orm_descriptors.keys()))
# just the columns
print(list(m.columns.keys()))
# etc.