Files
fitguide/app/schemas/manufacturer.py
T
2026-09-21 14:16:17 -03:00

34 lines
806 B
Python

from pydantic import BaseModel, ConfigDict, HttpUrl, field_validator
def _blank_to_none(value: str | None) -> str | None:
if isinstance(value, str) and not value.strip():
return None
return value
class ManufacturerBase(BaseModel):
name: str
url: HttpUrl | None = None
logo_url: HttpUrl | None = None
_normalize_url = field_validator("url", "logo_url", mode="before")(_blank_to_none)
class ManufacturerCreate(ManufacturerBase):
pass
class ManufacturerUpdate(BaseModel):
name: str | None = None
url: HttpUrl | None = None
logo_url: HttpUrl | None = None
_normalize_url = field_validator("url", "logo_url", mode="before")(_blank_to_none)
class ManufacturerRead(ManufacturerBase):
model_config = ConfigDict(from_attributes=True)
id: int