pyuow.contrib.sqlalchemy¶
SQLAlchemy 2.x integration. Requires the sqlalchemy extra:
Tables¶
tables
¶
BaseTable
¶
Bases: MappedAsDataclass, DeclarativeBase
AuditedEntityTable
¶
Bases: EntityTable
SoftDeletableEntityTable
¶
Bases: EntityTable
VersionedEntityTable
¶
Bases: EntityTable
Sync work¶
work
¶
SqlAlchemyTransaction
¶
Bases: BaseTransaction[Session]
SqlAlchemyTransactionManager
¶
SqlAlchemyReadOnlyTransactionManager
¶
Bases: SqlAlchemyTransactionManager
Sync repository¶
repository
¶
BaseSqlAlchemyEntityRepository
¶
BaseSqlAlchemyEntityRepository(
table: Type[ENTITY_TABLE],
transaction_manager: SqlAlchemyTransactionManager,
readonly_transaction_manager: SqlAlchemyReadOnlyTransactionManager,
)
Bases: Generic[ENTITY_ID, ENTITY_TYPE, ENTITY_TABLE], BaseEntityRepository[ENTITY_ID, ENTITY_TYPE], ABC
BaseSqlAlchemyRepositoryFactory
¶
BaseSqlAlchemyRepositoryFactory(
transaction_manager: SqlAlchemyTransactionManager,
readonly_transaction_manager: SqlAlchemyReadOnlyTransactionManager,
)
Bases: BaseRepositoryFactory, ABC
Async work¶
work
¶
SqlAlchemyTransaction
¶
Bases: BaseTransaction[AsyncSession]
SqlAlchemyTransactionManager
¶
Bases: BaseTransactionManager[SqlAlchemyTransaction]
SqlAlchemyReadOnlyTransactionManager
¶
Bases: SqlAlchemyTransactionManager
Async repository¶
repository
¶
BaseSqlAlchemyEntityRepository
¶
BaseSqlAlchemyEntityRepository(
table: Type[ENTITY_TABLE],
transaction_manager: SqlAlchemyTransactionManager,
readonly_transaction_manager: SqlAlchemyReadOnlyTransactionManager,
)
Bases: Generic[ENTITY_ID, ENTITY_TYPE, ENTITY_TABLE], BaseEntityRepository[ENTITY_ID, ENTITY_TYPE], ABC
BaseSqlAlchemyRepositoryFactory
¶
BaseSqlAlchemyRepositoryFactory(
transaction_manager: SqlAlchemyTransactionManager,
readonly_transaction_manager: SqlAlchemyReadOnlyTransactionManager,
)
Bases: BaseRepositoryFactory, ABC