create efficent models starting from json schema
Project description
Usage
With the schema in types/schema.yaml
$schema: http://json-schema.org/schema#
properties:
name:
type: string
surname:
type: string
age:
type: integer
required:
- name
- surname
- age
you can load a model with automatic validation and efficent use of __slots__
import yaml
import modeler
schema = yaml.load(open('types/schema.yaml').read())
Model = modeler.make_model(schema=schema,)
Model(name='Tommaso', surname='De Rossi', age=19)
Details
Model validate itself as soon as instantiated, if you want to change this behavior overwrite _on_init
method.
Model will return None if you try to access a property present in the json schema .properties
but not in the object.
Model will throw if you try to access a property not present in the object and not in the json schema .properties
.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
modeller-0.0.20.tar.gz
(4.9 kB
view hashes)
Built Distribution
Close
Hashes for modeller-0.0.20-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 99d796a0ab69b62ca3e2cfc504e1ae7c98bfa53afe894cd19f3f35e0279d1a9e |
|
MD5 | 20d5459ef3fc63c04fed17a4869524a2 |
|
BLAKE2b-256 | ba23019c7a782491e1f8bbf3a410d155154687f83d169540d0311ad5bf47ef0b |