用途:该技能面向 Python 数据校验库 Pydantic v2,帮助用户按惯用模式定义模型、校验数据并处理序列化,同时规避常见陷阱。
主要能力:模型定义(继承 BaseModel,使用 model_config = ConfigDict(...),可设 extra='forbid');数据校验(model_validate、model_validate_json、from_attributes=True 读取 ORM 对象);字段约束(Annotated 与 Field 组合,default_factory 处理可变默认值,alias 解耦字段名与传输格式);验证器(after/before/plain/wrap 模式,field_validator 多字段复用,model_validator 跨字段校验,可传 context);错误处理(捕获 ValidationError 并读取 .errors());序列化(model_dump、model_dump_json、exclude_unset);模型复制(model_copy)与初始化后钩子(model_post_init)。
使用方式:按资料示例调用上述 API,例如 User.model_validate({'id': 1, 'name': 'Alice'})、User.model_validate_json('{"id": 1, "name": "Alice"}')、user.model_copy(update={'name': 'Bob'})。JSON 输入优先用 model_validate_json 而非 model_validate(json.loads(...))。
适用场景:需要严格校验 API 输入、解析 JSON、对接 ORM 或构建结构化配置的 Python 项目。
限制:资料仅覆盖 Pydantic v2,未提供安装命令、版本号、收费或平台信息;避免使用已弃用的 V1 class Config,字段名不可与类型注解同名,验证器中避免用 AssertionError(-O 下会被跳过)。