Files
pydantic/docs/examples/schema1.py
T
2019-10-10 12:10:39 +01:00

39 lines
781 B
Python

from enum import Enum
from pydantic import BaseModel, Field
class FooBar(BaseModel):
count: int
size: float = None
class Gender(str, Enum):
male = 'male'
female = 'female'
other = 'other'
not_given = 'not_given'
class MainModel(BaseModel):
"""
This is the description of the main model
"""
foo_bar: FooBar = Field(...)
gender: Gender = Field(None, alias='Gender')
snap: int = Field(
42,
title='The Snap',
description='this is the value of snap',
gt=30,
lt=50,
)
class Config:
title = 'Main'
print(MainModel.schema())
#> {
#> 'type': 'object',
#> 'title': 'Main',
#> 'properties': {
#> 'foo_bar': {
#> ...
print(MainModel.schema_json(indent=2))