1414category = APIRouter (prefix = "/category" , tags = ["Category" ])
1515
1616
17- @category .post ("" , response_model = CategoryGet )
17+ @category .post (
18+ "" ,
19+ response_model = CategoryGet ,
20+ )
1821async def create_category (
1922 request : Request ,
2023 category_inp : CategoryPost ,
@@ -23,6 +26,7 @@ async def create_category(
2326 """
2427 Создать категорию пользовательских данных. Получить категорию можно будет со скоупами, имена которых в category_inp.scopes
2528 Ручка обновит документацию
29+ \f
2630 :param request: https://fastapi.tiangolo.com/advanced/using-request-directly/
2731 :param category_inp: Принимаемая моделька
2832 :param _: Аутентификация
@@ -38,6 +42,7 @@ async def create_category(
3842async def get_category (id : int ) -> CategoryGet :
3943 """
4044 Получить категорию
45+ \f
4146 :param id: Айди категории
4247 :param _: Аутентфикация
4348 :return: Категорию со списком скоупов, которые нужны для получения пользовательских данных этой категории
@@ -48,22 +53,24 @@ async def get_category(id: int) -> CategoryGet:
4853
4954@category .get ("" , response_model = list [CategoryGet ], response_model_exclude_none = True )
5055async def get_categories (query : list [Literal ["param" ]] = Query (default = [])) -> list [CategoryGet ]:
51- result = []
52- for category in Category .query (session = db .session ).all ():
53- to_append = category .dict ()
54- if "param" in query :
55- to_append ["params" ] = []
56- for param in category .params :
57- to_append ["params" ].append (param .dict ())
58- result .append (to_append )
5956 """
6057 Получить все категории
58+ \f
6159 :param query: Лист query параметров.
6260 Если ничего не указано то вернет просто список категорий
6361 Параметр 'param' - если указан, то в каждой категории будет список ее параметров
6462 :param _: Аутентифиуация
6563 :return: Список категорий. В каждой ноде списка - информация о скоупах, которые нужны для получения пользовательских данных этой категории
6664 """
65+ result = []
66+ for category in Category .query (session = db .session ).all ():
67+ to_append = category .dict ()
68+ if "param" in query :
69+ to_append ["params" ] = []
70+ for param in category .params :
71+ to_append ["params" ].append (param .dict ())
72+ result .append (to_append )
73+
6774 type_adapter = TypeAdapter (list [CategoryGet ])
6875 return type_adapter .validate_python (result )
6976
@@ -77,6 +84,7 @@ async def patch_category(
7784) -> CategoryGet :
7885 """
7986 Обновить категорию
87+ \f
8088 :param request: https://fastapi.tiangolo.com/advanced/using-request-directly/
8189 :param id: Айди обновляемой категории
8290 :param category_inp: Моделька обновления
@@ -95,6 +103,7 @@ async def delete_category(
95103) -> StatusResponseModel :
96104 """
97105 Удалить категорию
106+ \f
98107 :param request: https://fastapi.tiangolo.com/advanced/using-request-directly/
99108 :param id: Айди удаляемой категории
100109 :param _: Аутентификация
0 commit comments