Start here
The safe first move
Use @field_validator for simple field validators, but stop when the validator depends on values, field, config, each_item, or always.
Stop before automation when: values, field, or config parameters. each_item=True or always=True behavior.
Target shape
from pydantic import BaseModel, field_validator
class User(BaseModel):
@field_validator("email")
@classmethod
def clean_email(cls, value):
return value.lower()