mirror of
https://github.com/kennethreitz/pydantic.git
synced 2026-06-05 23:00:18 +00:00
7a06736ead
* Add additional parameters to Schema for validation and annotation (#311) * Add tests for validation declared via Schema class in defaults * Add validations to field from declarations in Schema * Add annotations in generated JSON Schema from validations via Schema * Augment tests for schema generation * Simplify validations from Schema in fields, from coverage hints * Update schema test to use the spec plural "examples" * Add docs and simple example of the additional parameters for Schema * Update history * Fix number of PR in HISTORY * Refactor check for numeric types, remove break to make coverage happy * Fix typo in docs, I confused gt with maximum * Finish docstring for Schema (I had forgotten about it) * Implement code review requests and lenient_issubclass with tests * Move Schema to its now file to extract from fields.py but avoid circular imports * Control coverage * Schema fixes (#318) * rearrange code * cleanup get_annotation_from_schema * fix typo * rename _schema to schema
51 lines
930 B
JSON
51 lines
930 B
JSON
{
|
|
"title": "Main",
|
|
"description": "This is the description of the main model",
|
|
"type": "object",
|
|
"properties": {
|
|
"foo_bar": {
|
|
"$ref": "#/definitions/FooBar"
|
|
},
|
|
"Gender": {
|
|
"title": "Gender",
|
|
"enum": [
|
|
"male",
|
|
"female",
|
|
"other",
|
|
"not_given"
|
|
],
|
|
"type": "string"
|
|
},
|
|
"snap": {
|
|
"title": "The Snap",
|
|
"description": "this is the value of snap",
|
|
"default": 42,
|
|
"exclusiveMinimum": 30,
|
|
"exclusiveMaximum": 50,
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"required": [
|
|
"foo_bar"
|
|
],
|
|
"definitions": {
|
|
"FooBar": {
|
|
"title": "FooBar",
|
|
"type": "object",
|
|
"properties": {
|
|
"count": {
|
|
"title": "Count",
|
|
"type": "integer"
|
|
},
|
|
"size": {
|
|
"title": "Size",
|
|
"type": "number"
|
|
}
|
|
},
|
|
"required": [
|
|
"count"
|
|
]
|
|
}
|
|
}
|
|
}
|