2024-01-18 21:15:56 +03:00
|
|
|
|
from fastapi import FastAPI
|
|
|
|
|
|
2024-01-22 08:48:48 +03:00
|
|
|
|
from fastfood.routers.dish import router as dish_router
|
2024-01-22 01:28:32 +03:00
|
|
|
|
from fastfood.routers.menu import router as menu_router
|
|
|
|
|
from fastfood.routers.submenu import router as submenu_router
|
2024-01-18 21:15:56 +03:00
|
|
|
|
|
2024-01-22 01:28:32 +03:00
|
|
|
|
description = """
|
|
|
|
|
# 🔥🔥🔥Fastfood-API поможет тебе подкрепиться 🔥🔥🔥
|
|
|
|
|
|
|
|
|
|
### У нас есть Menu. Ты можеш выбрать блюда из кухни, которая тебе нравится
|
|
|
|
|
|
|
|
|
|
## Menu
|
|
|
|
|
|
|
|
|
|
Ты можешь **add menu**.
|
|
|
|
|
|
|
|
|
|
Ты можешь **read menu**.
|
|
|
|
|
|
|
|
|
|
Ты можешь **patch menu**.
|
|
|
|
|
|
|
|
|
|
Ты можешь **delete menu**.
|
|
|
|
|
|
|
|
|
|
### У нас есть в SubMenu, где ты сможешь найти
|
|
|
|
|
десерты/напитки/супчики/прочие вкусности
|
|
|
|
|
|
|
|
|
|
# SubMenu
|
|
|
|
|
|
|
|
|
|
Ты можешь **add submenu into menu**.
|
|
|
|
|
|
|
|
|
|
Ты можешь **read submenu**.
|
|
|
|
|
|
|
|
|
|
Ты можешь **patch submenu**.
|
|
|
|
|
|
|
|
|
|
Ты можешь **delete menu**.
|
|
|
|
|
|
|
|
|
|
### У нас есть в Dish, где ты сможешь найти блюдо по вкусу
|
|
|
|
|
|
|
|
|
|
# Dish
|
|
|
|
|
|
|
|
|
|
Ты можешь **add dish into submenu**.
|
|
|
|
|
|
|
|
|
|
Ты можешь **read dish**.
|
|
|
|
|
|
|
|
|
|
Ты можешь **patch dish**.
|
|
|
|
|
|
|
|
|
|
Ты можешь **delete dish**.
|
|
|
|
|
|
|
|
|
|
## Приятного аппетита
|
|
|
|
|
"""
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
tags_metadata = [
|
|
|
|
|
{
|
|
|
|
|
"name": "menu",
|
|
|
|
|
"description": "Операции с меню.",
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"name": "submenu",
|
|
|
|
|
"description": "Подменю и работа с ним",
|
|
|
|
|
},
|
2024-01-22 08:48:48 +03:00
|
|
|
|
{"name": "dish", "description": "Блюда и работа с ними"},
|
2024-01-22 01:28:32 +03:00
|
|
|
|
]
|
2024-01-18 21:15:56 +03:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def create_app():
|
|
|
|
|
"""
|
2024-01-22 01:28:32 +03:00
|
|
|
|
Фабрика FastAPI.
|
2024-01-18 21:15:56 +03:00
|
|
|
|
"""
|
2024-01-22 01:28:32 +03:00
|
|
|
|
app = FastAPI(
|
|
|
|
|
title="Fastfood-API",
|
|
|
|
|
description=description,
|
|
|
|
|
version="0.0.1",
|
|
|
|
|
contact={
|
|
|
|
|
"name": "Sergey Vanyushkin",
|
|
|
|
|
"url": "http://pi3c.ru",
|
|
|
|
|
"email": "pi3c@yandex.ru",
|
|
|
|
|
},
|
|
|
|
|
license_info={
|
|
|
|
|
"name": "MIT license",
|
|
|
|
|
"url": "https://mit-license.org/",
|
|
|
|
|
},
|
|
|
|
|
openapi_tags=tags_metadata,
|
|
|
|
|
)
|
|
|
|
|
app.include_router(menu_router)
|
|
|
|
|
app.include_router(submenu_router)
|
|
|
|
|
app.include_router(dish_router)
|
2024-01-18 21:15:56 +03:00
|
|
|
|
|
|
|
|
|
return app
|