api/app/schemas/user_image.py
2025-04-09 16:18:52 +08:00

38 lines
1.2 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

from pydantic import BaseModel, Field
from typing import Optional
from datetime import datetime
from app.schemas.user import User
class UserImageBase(BaseModel):
"""用户形象基础模式"""
image_url: str = Field(..., description="图片URL")
is_default: bool = Field(False, description="是否为默认形象")
class UserImageCreate(UserImageBase):
"""创建用户形象请求"""
user_id: Optional[int] = Field(None, description="用户ID可选通常由系统设置")
class UserImageInDB(UserImageBase):
"""数据库中的用户形象数据"""
id: int
user_id: int
create_time: datetime
class Config:
from_attributes = True
class UserImage(UserImageInDB):
"""用户形象响应模式"""
pass
class UserImageUpdate(BaseModel):
"""更新用户形象请求"""
image_url: Optional[str] = Field(None, description="图片URL")
is_default: Optional[bool] = Field(None, description="是否为默认形象")
class UserImageWithUser(UserImage):
"""包含用户信息的用户形象响应"""
user: Optional[User] = Field(None, description="用户信息")
class Config:
from_attributes = True