使用SQLAlchemy的声明性语法时访问表实例的最佳方法
时间:2020-03-05 18:56:53 来源:igfitidea点击:
SQLAlchemy的所有文档都使用本地表实例提供了INSERT和UPDATE示例(例如tablename.update()...)
使用声明性语法似乎很难做到这一点,我需要引用Base.metadata.tables [" tablename"]
以获得表引用。
我应该以另一种方式这样做吗?使用声明性语法时,建议对" INSERT"和" UPDATE"使用不同的语法吗?我应该改用旧方法吗?
解决方案
回答
通过声明式类上的__table__
属性
回答
很好,对我有用:
class Users(Base): __tablename__ = 'users' __table_args__ = {'autoload':True} users = Users() print users.__table__.select()
...选择用户....
回答
表(对象)和表名(表名,字符串)之间可能会有些混淆。使用表类属性对我来说很好。