Lazy parsing for Pydantic models
This library provides a lazy interface for parsing objects from dictionaries. During the parsing, it saves the raw data inside the object and parses each field on demand.
Install
poetry
poetry add lazy-model
pip
pip install lazy-model
Usage
from lazy_model import LazyModel
from pydantic import validator
class Sample(LazyModel):
i: int
s: str
@validator("s")
def s_upper(cls, v):
return v.upper()
obj = Sample.lazy_parse({"i": "10", "s": "test"})
print(obj.__dict__)
print(obj.s)
print(obj.__dict__)
print(obj.i, type(obj.i))
print(obj.__dict__)