Добавлены базы и роуты для Серверов и Баз Данных

This commit is contained in:
2024-10-23 16:53:57 +09:00
parent 505e1b1377
commit 6fece6d096
22 changed files with 783 additions and 29 deletions

0
core/routers/__init__.py Normal file
View File

40
core/routers/servers.py Normal file
View File

@ -0,0 +1,40 @@
from fastapi import APIRouter, Depends
from ..crud.servers import get, get_all,delete,update, create
from typing import Annotated, Sequence
from sqlalchemy.ext.asyncio import AsyncSession
from ..db_helper import db_helper
from ..schemas import ServerBase, ServerSchema
router = APIRouter( tags=["Server"], prefix="/server")
@router.get("/", response_model=Sequence[ServerSchema])
async def get_all_server(session: Annotated[AsyncSession, Depends(db_helper.session_getter)]):
return await get_all(session)
@router.get("/{id}", response_model=ServerSchema)
async def get_server(session: Annotated[AsyncSession, Depends(db_helper.session_getter)],id:int):
return await get(session,id)
@router.post("/", response_model=ServerSchema)
async def create_server(
session: Annotated[AsyncSession, Depends(db_helper.session_getter)],
model: ServerBase
):
login = await create(
session=session,
model=model
)
return login
@router.patch("/{id}", response_model=ServerSchema)
async def update_server(
session: Annotated[AsyncSession, Depends(db_helper.session_getter)],
id: int,
model: ServerBase
):
login = await update(
session=session,
id=id,
model=model
)
return login