diff --git a/app/ioc.py b/app/ioc.py index 6190593..fb4811f 100644 --- a/app/ioc.py +++ b/app/ioc.py @@ -1,3 +1,4 @@ +import litestar from modern_di import Group, Scope, providers from app.repositories import CardsRepository, DecksRepository @@ -22,10 +23,15 @@ class Dependencies(Group): cache=providers.CacheSettings(finalizer=close_sa_engine), bound_type=None, ) + optional_request = providers.ContextProvider(litestar.Request, scope=Scope.REQUEST, bound_type=None, default=None) dynamic_engine = providers.Factory( scope=Scope.REQUEST, creator=choose_sa_engine, - kwargs={"primary_engine": database_engine, "replica_engine": database_replica_engine}, + kwargs={ + "primary_engine": database_engine, + "replica_engine": database_replica_engine, + "request": optional_request, + }, ) session = providers.Factory( scope=Scope.REQUEST,