refactor: добавлены маршруты аутентификации в FastAPI проект
- Создан новый файл `routes.py` в директории `apps/auth`, содержащий маршруты для регистрации пользователя. - В файле `__init__.py` в директории `apps` инициализирован роутер `apps_router` и подключен маршрут аутентификации. - Обновлен файл `main.py` для включения роутера `apps_router`.
This commit is contained in:
parent
e421b6c0e1
commit
c9de61e535
@ -5,3 +5,11 @@
|
|||||||
Специально для проекта "Код на салфетке"
|
Специально для проекта "Код на салфетке"
|
||||||
https://pressanybutton.ru/category/servis-na-fastapi/
|
https://pressanybutton.ru/category/servis-na-fastapi/
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
from fastapi import APIRouter
|
||||||
|
|
||||||
|
from lkeep.apps.auth.routes import auth_router
|
||||||
|
|
||||||
|
apps_router = APIRouter(prefix="/api/v1")
|
||||||
|
|
||||||
|
apps_router.include_router(router=auth_router)
|
||||||
|
31
lkeep/apps/auth/routes.py
Normal file
31
lkeep/apps/auth/routes.py
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
"""
|
||||||
|
Проект: Lkeep
|
||||||
|
Автор: Иван Ашихмин
|
||||||
|
Год: 2025
|
||||||
|
Специально для проекта "Код на салфетке"
|
||||||
|
https://pressanybutton.ru/category/servis-na-fastapi/
|
||||||
|
"""
|
||||||
|
|
||||||
|
from fastapi import APIRouter, Depends
|
||||||
|
from starlette import status
|
||||||
|
|
||||||
|
from lkeep.apps.auth.schemas import RegisterUser, UserReturnData
|
||||||
|
from lkeep.apps.auth.services import UserService
|
||||||
|
|
||||||
|
auth_router = APIRouter(prefix="/auth", tags=["auth"])
|
||||||
|
|
||||||
|
|
||||||
|
@auth_router.post(path="/register", status_code=status.HTTP_201_CREATED)
|
||||||
|
async def registration(user: RegisterUser, service: UserService = Depends(UserService)) -> UserReturnData:
|
||||||
|
"""
|
||||||
|
Регистрация нового пользователя.
|
||||||
|
|
||||||
|
:param user: Данные нового пользователя, который нужно зарегистрировать.
|
||||||
|
:type user: RegisterUser
|
||||||
|
:param service: Сервис для взаимодействия с пользователями.
|
||||||
|
:type service: UserService
|
||||||
|
:returns: Данные зарегистрированного пользователя.
|
||||||
|
:rtype: UserReturnData
|
||||||
|
:raises HTTPException 400: Если данные пользователя некорректны.
|
||||||
|
"""
|
||||||
|
return await service.register_user(user=user)
|
@ -9,8 +9,12 @@ https://pressanybutton.ru/category/servis-na-fastapi/
|
|||||||
import uvicorn
|
import uvicorn
|
||||||
from fastapi import FastAPI
|
from fastapi import FastAPI
|
||||||
|
|
||||||
|
from lkeep.apps import apps_router
|
||||||
|
|
||||||
app = FastAPI()
|
app = FastAPI()
|
||||||
|
|
||||||
|
app.include_router(router=apps_router)
|
||||||
|
|
||||||
|
|
||||||
def start():
|
def start():
|
||||||
uvicorn.run(app="lkeep.main:app", reload=True)
|
uvicorn.run(app="lkeep.main:app", reload=True)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user