joe*_*ker 5 python orm sqlalchemy
如果两个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))
Run Code Online (Sandbox Code Playgroud)
我在单个会话中成功地使用了不同的声明性基础。这在使用多个数据库时非常有用:每个库都是使用自己的元数据创建的,并且每个元数据都绑定到单独的数据库。您的某些声明性基础可以定义其他方法,或者可以使用另一个元类来安装扩展。
| 归档时间: |
|
| 查看次数: |
2149 次 |
| 最近记录: |