在sqlalchemy表模型类中使用全局declarative_base

时间:2015-12-27 05:44:11

标签: python sql oop sqlalchemy relational-database

我正在学习SQLAlchemy,我正在阅读的所有教程/相关问题(例如this tutorialthis questionthis documentation)都使用范例

[__NSArrayM objectForKeyedSubscript:]: unrecognized selector sent to instance 0x1740571c0

它依赖于import sqlalchemy as sqla DeclarativeBase = sqla.ext.declarative.declarative_base() class TableModel(DeclarativeBase): """SQLAlchemy Model for a Table. """ __tablename__ = "some_table" id = sqla.Column(sqla.Integer, primary_key=True) ... 的全局实例。这看起来很奇怪,因为如果我在许多其他模块/脚本中导入此代码,实例将在执行中的某个随机点创建,而不是完全定义。我想它似乎只是非pythonic或穷人OOP ......

为什么这是完全有效的,坚固的设计?或者这只是SQLAlchemy-101版本,还有更强大的模式吗?

0 个答案:

没有答案