From e64c1a22a61fedddde319627bf1c6599a30de04e Mon Sep 17 00:00:00 2001 From: "Evgeny (Krymmy) Momotov" Date: Wed, 12 Nov 2025 16:36:18 +0300 Subject: [PATCH] [UP] data_models.py --- src/AsteriskAPIManager/data_models.py | 34 ++++----------------------- 1 file changed, 5 insertions(+), 29 deletions(-) diff --git a/src/AsteriskAPIManager/data_models.py b/src/AsteriskAPIManager/data_models.py index 11143ed..0601318 100644 --- a/src/AsteriskAPIManager/data_models.py +++ b/src/AsteriskAPIManager/data_models.py @@ -6,41 +6,17 @@ class User(BaseModel): id: Optional[int] = Field(description="Идентификатор (автоматический)", default=None) username: str = Field(max_length=150, description="Пользовательское имя", example="john_doe") #password: str = Field(max_length=255, description="Пароль", example="secret123") - email: str = Field(max_length=254, default="", description="Электронная почта", example="john@example.com") - first_name: str = Field(max_length=150, default="", description="Имя", example="John") - last_name: str = Field(max_length=150, default="", description="Фамилия", example="Doe") + email: Optional[str] = Field(max_length=254, default="", description="Электронная почта", example="john@example.com") + first_name: Optional[str] = Field(max_length=150, default="", description="Имя", example="John") + last_name: Optional[str] = Field(max_length=150, default="", description="Фамилия", example="Doe") #is_staff: bool = Field(default=False, description="Статус администратора") #is_active: bool = Field(default=False, description="Активен") #is_superuser: bool = Field(default=False, description="Суперпользователь") #date_joined: str = Field(description="Дата создания", example="2024-01-01T12:00:00") #last_login: Optional[str] = Field(null=True, default=None, description="Последний вход") - @validator("email") - def validate_email(cls, v): - if v and "@" not in v or "." not in v: - raise ValueError("Некорректный email") - return v - - @validator("username") - def validate_username(cls, v): - if len(v) > 150: - raise ValueError("Имя пользователя слишком длинное (максимум 150 символов)") - return v - - @validator("first_name") - def validate_first_name(cls, v): - if v and len(v) > 150: - raise ValueError("Имя слишком длинное (максимум 150 символов)") - return v - - @validator("last_name") - def validate_last_name(cls, v): - if v and len(v) > 150: - raise ValueError("Фамилия слишком длинная (максимум 150 символов)") - return v - class Config: - extra = "forbid" + extra = "ignore" from_attributes = True @@ -118,7 +94,7 @@ class SIPAccount(BaseModel): return v class Config: - extra = "forbid" + extra = "ignore" from_attributes = True