44 lines
899 B
Python
44 lines
899 B
Python
from pydantic import BaseModel
|
|
from typing import List, Optional
|
|
|
|
class ProfileCreate(BaseModel):
|
|
display_name: str
|
|
age: int
|
|
gender: str
|
|
location: str
|
|
bio: str
|
|
interests: List[str]
|
|
|
|
class ProfileUpdate(BaseModel):
|
|
display_name: Optional[str] = None
|
|
age: Optional[int] = None
|
|
gender: Optional[str] = None
|
|
location: Optional[str] = None
|
|
bio: Optional[str] = None
|
|
interests: Optional[List[str]] = None
|
|
|
|
class PhotoInfo(BaseModel):
|
|
id: int
|
|
file_path: str
|
|
|
|
class ProfileResponse(BaseModel):
|
|
id: int
|
|
user_id: int
|
|
display_name: str
|
|
age: int
|
|
gender: str
|
|
location: str
|
|
bio: str
|
|
interests: List[str]
|
|
photos: List[PhotoInfo] = []
|
|
|
|
class DiscoverResponse(BaseModel):
|
|
id: int
|
|
display_name: str
|
|
age: int
|
|
gender: str
|
|
location: str
|
|
bio: str
|
|
interests: List[str]
|
|
photos: List[PhotoInfo] = []
|