Det er ikke en god måde at binde globale objekter (kortlæggere, metadata) til brugerspecifik forbindelse. Samt at bruge scoped session. Jeg foreslår at oprette en ny session for hver anmodning og konfigurere den til at bruge brugerspecifikke forbindelser. Følgende eksempel antager, at du bruger separate metadataobjekter til hver database:
binds = {}
finance_engine = create_engine(url1)
binds.update(dict.fromkeys(finance_metadata.sorted_tables, finance_engine))
# The following line is required when mappings to joint tables are used (e.g.
# in joint table inheritance) due to bug (or misfeature) in SQLAlchemy 0.5.4.
# This issue might be fixed in newer versions.
binds.update(dict.fromkeys([Employee, Customer, Invoice], finance_engine))
staff_engine = create_engine(url2)
binds.update(dict.fromkeys(staff_metadata.sorted_tables, staff_engine))
# See comment above.
binds.update(dict.fromkeys([Project, Hour], staff_engine))
session = sessionmaker(binds=binds)()