Flask + Schema = Cazart!
Project description
cazart
Flask + schema = cazart!
cazart is a small helper for writing schematized JSON endpoints with Flask. It rolls
schema into Flask's route
decorator, allowing
for one-shot route and schema specification.
Installation
cazart requires Python 3.6 or newer.
pip3 install cazart
Usage
To use cazart, just swap your Flask
instance out for a Cazart
one:
from cazart import Cazart
app = Cazart(__name__)
You can access all of Flask's baseline functionality (including non-validated routes)
via app.flask
.
Then, use app.route
to specify a combination route and schema:
from cazart import Cazart
from schema import Schema, Or
app = Cazart(__name__)
@app.route("/cazart", schema=Schema({"name": Or("alice", "bob", "mary")}))
def cazart(res):
print(f"my verified payload is {res}!")
return ("ok", 200)
See the examples for full usage examples, including custom error handling and dispatching to different schemas on a route based on HTTP method.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file cazart-0.0.1.tar.gz
.
File metadata
- Download URL: cazart-0.0.1.tar.gz
- Upload date:
- Size: 3.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.7.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 668144fda08b82f8978361c3c92e74af820f5ab25e719ecca7346105bc0173d4 |
|
MD5 | fa3d1bc4544edfa05de6ad8a53218dab |
|
BLAKE2b-256 | 67a78630593541c548a1ba26cc07e377f160b6b7b7679142feae313e3ea8f787 |