13 lines
433 B
Python
13 lines
433 B
Python
from aiogram import BaseMiddleware
|
|
from sqlalchemy.ext.asyncio import async_sessionmaker
|
|
|
|
|
|
class DBSessionMiddleware(BaseMiddleware):
|
|
def __init__(self, session_factory: async_sessionmaker):
|
|
self.session_factory = session_factory
|
|
|
|
async def __call__(self, handler, event, data):
|
|
async with self.session_factory() as session:
|
|
data["session"] = session
|
|
return await handler(event, data)
|