From 69a3032102fc1a467f5b93febd0d9e28adbfef4e Mon Sep 17 00:00:00 2001 From: carry <2641257231@qq.com> Date: Wed, 19 Feb 2025 14:39:36 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E4=BA=86pydantic=E7=9A=84?= =?UTF-8?q?=E7=89=88=E6=9C=AC=E9=97=AE=E9=A2=98=E5=92=8Cpython=E4=BE=9D?= =?UTF-8?q?=E8=B5=96=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- requirements.txt | 3 +++ schemas/user.py | 4 ++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/requirements.txt b/requirements.txt index acec49f..eb32115 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,3 +1,5 @@ +pydantic<2.0 +asyncmy>=0.2.10 fastapi>=0.95.2 python-dotenv>=1.0.0 sqlalchemy>=2.0.15 @@ -6,4 +8,5 @@ bcrypt>=4.0.1 pyjwt>=2.6.0 pytest>=7.3.1 requests>=2.28.2 +cryptography>=42.0.2 uvicorn[standard]>=0.21.1 diff --git a/schemas/user.py b/schemas/user.py index f837b7a..46dc5f3 100644 --- a/schemas/user.py +++ b/schemas/user.py @@ -1,6 +1,6 @@ from datetime import datetime from enum import Enum -from pydantic import BaseModel, Field, model_validator +from pydantic import BaseModel, Field, root_validator from typing import Optional # 用户角色枚举 @@ -27,7 +27,7 @@ class UserUpdate(BaseModel): description: Optional[str] = Field(None, max_length=255, description="用户描述") # 可选:确保至少更新一个字段 - @model_validator(mode='before') + @root_validator def validate_at_least_one_field(cls, values): if not any(values.values()): raise ValueError("至少需要更新一个字段")