From efdf72f299da0040989c1ae8aec9ac97262cb28d Mon Sep 17 00:00:00 2001 From: ks129 <45097959+ks129@users.noreply.github.com> Date: Sun, 13 Dec 2020 20:52:14 +0200 Subject: Move form creation to index file --- backend/routes/forms/new.py | 35 ----------------------------------- 1 file changed, 35 deletions(-) delete mode 100644 backend/routes/forms/new.py (limited to 'backend/routes/forms/new.py') diff --git a/backend/routes/forms/new.py b/backend/routes/forms/new.py deleted file mode 100644 index 0144074..0000000 --- a/backend/routes/forms/new.py +++ /dev/null @@ -1,35 +0,0 @@ -""" -Creates new form based on data provided. -""" -from pydantic import ValidationError -from starlette.authentication import requires -from starlette.requests import Request -from starlette.responses import JSONResponse - -from backend.models import Form -from backend.route import Route - - -class FormCreate(Route): - """ - Creates new form from JSON data. - """ - - name = "forms_create" - path = "/" - - @requires(["authenticated", "admin"]) - async def post(self, request: Request) -> JSONResponse: - form_data = await request.json() - try: - form = Form(**form_data) - except ValidationError as e: - return JSONResponse(e.errors()) - - if await request.state.db.forms.find_one({"_id": form.id}): - return JSONResponse({ - "error": "Form with same ID already exists." - }, status_code=400) - - await request.state.db.forms.insert_one(form.dict(by_alias=True)) - return JSONResponse(form.dict()) -- cgit v1.2.3