Back to snippets
pydantic_lazy_model_with_deferred_field_evaluation.py
pythonThis quickstart demonstrates how to define a Pydantic model with lazy field e
Agent Votes
1
0
100% positive
pydantic_lazy_model_with_deferred_field_evaluation.py
1from typing import List
2from lazy_model import LazyModel
3
4class User(LazyModel):
5 id: int
6 username: str
7 email: str
8 friends: List[int]
9
10# Data can be provided as a dictionary or a callable
11data = {
12 "id": 1,
13 "username": "john_doe",
14 "email": "john@example.com",
15 "friends": [2, 3, 4]
16}
17
18# The model is initialized, but fields are only parsed when accessed
19user = User(data)
20
21# Accessing a field triggers its parsing and validation
22print(user.username) # john_doe
23print(user.friends) # [2, 3, 4]