connect database

This commit is contained in:
2025-09-27 09:13:20 +03:00
parent 5982351dd2
commit 1a49545fff
16 changed files with 180 additions and 38 deletions

View File

@@ -1,7 +1,9 @@
from typing import Any, Awaitable, Callable
from aiogram import BaseMiddleware
from aiogram.types import Update
from aiogram.types import Update, User
from app.infrastructure.database.crud import create_user, get_user_by_tg_id
class GetUserMiddleware(BaseMiddleware):
@@ -11,5 +13,14 @@ class GetUserMiddleware(BaseMiddleware):
event: Update,
data: dict[str, Any],
):
data.update(user={"is_admin": False})
return await handler(event, data)
session = data["session"]
tg_user: User = data.get("event_from_user")
user = await get_user_by_tg_id(session, tg_user.id)
if user is None:
user = await create_user(
session,
tg_user.id,
tg_user.username,
)
data["user"] = user
return await handler(event, data)