不管设置为哪一档,都会冲突
我的 pydantic 模型是这样定义的
class UserRegisterResponse(BaseModel):
user: UserResponse | None = Field(None, description='用户信息')
registered: bool = Field(default=False, description='是否注册成新号')
already_exist: bool = Field(default=False, description='邮箱是否已存在')
message: str = Field(default='', description='描述信息, 对外,前端可直接渲染')
pylance 眼中动态生成的 class 是这样的
class UserRegisterResponse(
*,
user: UserResponse | None,
registered: bool = False,
already_exist: bool = False,
message: str = ''
)
为什么会出现 user: UserResponse | None 这样的?不是设置默认值是 None 了吗?应该是 user: UserResponse | None = None 才对啊?
我的 pydantic 是 2.12.5
-> % pip show pydantic
Name: pydantic
Version: 2.12.5
Summary: Data validation using Python type hints
Home-page: https://github.com/pydantic/pydantic
Author:
Author-email: Samuel Colvin <s@muelcolvin.com>, Eric Jolibois <em.jolibois@gmail.com>, Hasan Ramezani <hasan.r67@gmail.com>, Adrian Garcia Badaracco <1755071+adriangb@users.noreply.github.com>, Terrence Dorsey <terry@pydantic.dev>, David Montague <david@pydantic.dev>, Serge Matveenko <lig@countzero.co>, Marcelo Trylesinski <marcelotryle@gmail.com>, Sydney Runkle <sydneymarierunkle@gmail.com>, David Hewitt <mail@davidhewitt.io>, Alex Hall <alex.mojaki@gmail.com>, Victorien Plot <contact@vctrn.dev>, Douwe Maan <hi@douwe.me>
License-Expression: MIT
Location: /Users/ponponon/.local/share/virtualenvs/bossnowork_api-9SBSK7PM/lib/python3.13/site-packages
Requires: annotated-types, pydantic-core, typing-extensions, typing-inspection
Required-by: fastapi, openai, zai-sdk

