tgs / bot /middlewares /database.py
AZILS's picture
Upload 119 files
054900e verified
raw
history blame contribute delete
638 Bytes
from __future__ import annotations
from typing import TYPE_CHECKING, Any
from aiogram import BaseMiddleware
from bot.database.database import sessionmaker
if TYPE_CHECKING:
from collections.abc import Awaitable, Callable
from aiogram.types import TelegramObject
class DatabaseMiddleware(BaseMiddleware):
async def __call__(
self,
handler: Callable[[TelegramObject, dict[str, Any]], Awaitable[Any]],
event: TelegramObject,
data: dict[str, Any],
) -> Any:
async with sessionmaker() as session:
data["session"] = session
return await handler(event, data)