> ## Documentation Index
> Fetch the complete documentation index at: https://docs.squarecloud.app/llms.txt
> Use this file to discover all available pages before exploring further.

# 使用 pydantic

> 了解如何使用 pydantic 进行数据校验。

## 什么是 pydantic？

Pydantic 是一个出色而现代的 Python 库，使用
类型注解进行数据校验。它强制执行类型约束，确保数据一致性，
并在校验失败时提供清晰的错误消息。Pydantic 既
强大又易用，使其成为处理
结构化数据的开发者的热门选择。

## 安装

要在此 SDK 中使用 Pydantic，你需要安装带有 pydantic
额外依赖的 SDK，因为它默认并不包含：

```bash theme={null}
pip install "squarecloud[pydantic]"
```

## 特性

在此 SDK 中，Pydantic 用于将一个字典形式的额外参数
转换为 Pydantic 模型，从而实现更健壮的数据
校验和处理。

```python theme={null}
import squarecloud as square
from squarecloud import Endpoint
from pydantic import BaseModel

class Animal(BaseModel):
    name: str
    age: int

@client.on_request(Endpoint.status())
async def get_extra_param(before, after, extra: Animal):
    print(extra.name)
    print(extra.age)

async def main():
    client = square.Client('your api key')
    await client.app_status('application_id', extra={'name': 'felix', 'age': 3})
```

在此示例中，Animal 类是一个具有两个
字段（name 和 age）的 Pydantic 模型。当向 status endpoint 发起请求时，
extra 参数会自动转换为 Animal 实例，让你
能够轻松地访问和校验数据。
