Synchronise Pydantic model schemas with JSONSchema files
Project description
pydantic-schema-sync
Synchronise Pydantic model schemas with JSONSchema files.
Usage
CLI
usage: model-schema-sync [-h] [--model MODEL] [--schema_path SCHEMA_PATH]
[--mjs_kwargs MJS_KWARGS]
Config for syncing Pydantic model schemas to disk.
options:
-h, --help show this help message and exit
--model MODEL Dotted import path to the Pydantic model
--schema_path SCHEMA_PATH
File path to save the schema at
--mjs_kwargs MJS_KWARGS
Kwargs to pass `.model_json_schema()`
To serialise the schema of the model named SyncCLI
(in the package pydantic_schema_sync
's cli
module)
to the file schema.json
, passing the by_alias=False
param to .model_json_schema()
:
model-schema-sync \
--model pydantic_schema_sync.cli.SyncCLI \
--schema_path schema.json \
--mjs_kwargs '{"by_alias": false}'
Python
From a model class:
from pydantic_schema_sync import sync_schema
# Using field alias (default)
sync_schema(model=Foo, schema_path="schema.json")
# Unaliased field
sync_schema(model=Foo, schema_path="schema.json", mjs_kwargs={"by_alias": False})
From a path to a model class:
from pydantic_schema_sync import sync_schema_from_path
# This path must be in an installed package
path_to_model_cls = "pydantic_schema_sync.cli.SyncCLI"
sync_schema_from_path(model=path_to_model_cls, schema_path="schema.json")
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
Built Distribution
File details
Details for the file pydantic_schema_sync-0.1.3.tar.gz
.
File metadata
- Download URL: pydantic_schema_sync-0.1.3.tar.gz
- Upload date:
- Size: 2.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: pdm/2.18.1 CPython/3.10.14 Linux/5.15.0-117-generic
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 955aea5e6234f8c1244f738a7b8653c64ac4de26372fe12c409930dd880382bb |
|
MD5 | 5778f40ffa91655ff46942481b957d5a |
|
BLAKE2b-256 | 5508d512c8632f51f83f82c8029d85a3d758fca7462558648f5beb177dfc6256 |
File details
Details for the file pydantic_schema_sync-0.1.3-py3-none-any.whl
.
File metadata
- Download URL: pydantic_schema_sync-0.1.3-py3-none-any.whl
- Upload date:
- Size: 3.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: pdm/2.18.1 CPython/3.10.14 Linux/5.15.0-117-generic
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | eb12bd1c0032d10d68bd3e87a903134b594cccedff7a2b52deb481dfe839a373 |
|
MD5 | bc91dab006f9c285507c93bf9301f667 |
|
BLAKE2b-256 | e75777bb1a3a51bef6c654ca3522b53ee2b588a7f5717c259612b1b351d068d5 |