Filaments can now be created

This commit is contained in:
Donkie
2023-04-01 22:51:36 +02:00
parent 35fdd23ec0
commit 2fa91b0632
11 changed files with 246 additions and 44 deletions

View File

@@ -1,21 +1,31 @@
"""Router setup for the v1 version of the API."""
from fastapi import APIRouter, FastAPI
from fastapi import FastAPI
from fastapi.responses import JSONResponse
from starlette.requests import Request
from starlette.responses import Response
from spoolson.exceptions import ItemNotFoundError
from . import filament, spool, vendor
# ruff: noqa: D103
app = FastAPI(
title="Spoolson REST API v1",
version="1.0.0",
root_path_in_servers=False,
)
router = APIRouter(
prefix="/api/v1",
)
router.include_router(filament.router)
router.include_router(spool.router)
router.include_router(vendor.router)
@app.exception_handler(ItemNotFoundError)
async def itemnotfounderror_exception_handler(_request: Request, exc: ItemNotFoundError) -> Response:
return JSONResponse(
status_code=404,
content={"message": str(exc)},
)
app.include_router(router)
app.include_router(filament.router)
app.include_router(spool.router)
app.include_router(vendor.router)