如果两个SQLAlchemy模型必须参与同一个会话,是否有必要从declarative_base()
的同一个实例继承?导入两个或多个定义SQLAlchemy模型的模块时可能就是这种情况。
from sqlalchemy.ext.declarative import declarative_base
Base = declarative_base()
class SomeClass(Base):
__tablename__ = 'some_table'
id = Column(Integer, primary_key=True)
name = Column(String(50))
Base2 = declarative_base()
class AnotherClass(Base2):
__tablename__ = 'another_table'
id = Column(Integer, primary_key=True)
name = Column(String(50))
答案 0 :(得分:3)
单独的基类可以正常工作。
当他们使用不同的数据库连接时,你必须要小心,在这种情况下,你不能在两个数据库中使用连接 - 每个查询都需要转到一个数据库。