2つのSQLAlchemyモデルが同じセッションに参加する必要がある場合、同じインスタンスdeclarative_base()
から継承する必要がありますか?これは、SQLAlchemyモデルを定義する2つ以上のモジュールをインポートする場合に当てはまります。2つのSQLAlchemy宣言型モデルは同じdeclarative_base()を共有する必要がありますか?
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))
binds = {Class:database、...}引数を持つ単一のセッションを使用することもできます。 – joeforker
しかし、そのようなバインド辞書は、巨大になると維持するのは難しいです。私はいくつかのメタデータオブジェクトから自動的に構築することについて述べています。 –