Vue d'ensemble
Pydantic 2.8, publié le 2 août 2024, ajoute les avertissements de validation (warnings) et améliore les unions discriminées (tagged unions).
Fonctionnalités principales
Warnings et tagged unions
Les avertissements de validation permettent de signaler des problèmes non bloquants. Les unions discriminées bénéficient d'une syntaxe plus claire.
python
from pydantic import BaseModel, Field
from typing import Literal, Union, Annotated
class Chat(BaseModel):
type: Literal['chat'] = 'chat'
miaule: bool = True
class Chien(BaseModel):
type: Literal['chien'] = 'chien'
aboie: bool = True
Animal = Annotated[
Union[Chat, Chien],
Field(discriminator='type'),
]
class Foyer(BaseModel):
animal: Animal
f = Foyer(animal={'type': 'chat', 'miaule': True})
print(f.animal) # type='chat' miaule=True
