Skip to content

422 Error in demo: POST /api/forms/select #275

Open
@charlie-corus

Description

@charlie-corus

I'm running a local copy of the demo and there's an issue with the Select form. Pressing "Submit" throws a server-side error, and the post router method is never run.

I think the problem comes from the multiple select fields. Commenting these out, or converting them to single fields, fixes the problem, and the Submit button triggers to goto event leading back to the root URI. I read in other issues on here that arrays types in forms are not yet supported. For clarity, perhaps this should be removed from the demo until they are?

Also, I tried adding a handler like this in demo/__init__.py:

from fastapi.exceptions import RequestValidationError
from fastapi.responses import JSONResponse
from fastapi import status

@app.exception_handler(RequestValidationError)
async def validation_exception_handler(request, exc):
    print(f"Caught 422 exception on request:\n\{request}\n\n")
    return JSONResponse(
        status_code=status.HTTP_422_UNPROCESSABLE_ENTITY,
        content={"detail": exc.errors(), "body": exc.body},
    )

The 422 event is printed to the console, but the handler never gets fired. Why is this?

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingdocumentationImprovements or additions to documentation

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions