Support for async validation mechanisms
simonw opened this issue · 0 comments
I found myself wanting to add a custom validator to a form that makes an asynchronous HTTP request (using httpx
) to confirm that a provided URL was valid - but realized that wtforms
currently only supports blocking synchronous functions for validators.
There is a project that extends wtforms
to work with async
, but it's packaged for Starlette which I'm not using here: https://github.com/kubetail-org/starlette-wtf/blob/master/starlette_wtf/form.py
It would be great if wtforms
provided an async validation mechanism in the default package. It's an increasingly common pattern thanks to the popularity of projects like Starlette and FastAPI. My own Datasette package uses async and has recently adopted wtforms
for the enrichments feature, which is how I found this limitation.