From 482c62a86deb9fcd527fdd289bc4514f4d15d7fe Mon Sep 17 00:00:00 2001 From: Backend IM Bot Date: Thu, 27 Mar 2025 16:15:52 +0000 Subject: [PATCH] Add Country schema --- schemas/country.py | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 schemas/country.py diff --git a/schemas/country.py b/schemas/country.py new file mode 100644 index 0000000..791ae0f --- /dev/null +++ b/schemas/country.py @@ -0,0 +1,37 @@ +from pydantic import BaseModel, Field +from typing import Optional + +class CountryBase(BaseModel): + name: str = Field(..., min_length=1, max_length=100) + code: str = Field(..., min_length=2, max_length=2) + currency: Optional[str] = Field(None, max_length=50) + capital: Optional[str] = Field(None, max_length=100) + region: Optional[str] = Field(None, max_length=100) + +class CountryCreate(CountryBase): + class Config: + schema_extra = { + "example": { + "name": "United States", + "code": "US", + "currency": "USD", + "capital": "Washington, D.C.", + "region": "North America" + } + } + +class Country(CountryBase): + id: int + + class Config: + orm_mode = True + schema_extra = { + "example": { + "id": 1, + "name": "United States", + "code": "US", + "currency": "USD", + "capital": "Washington, D.C.", + "region": "North America" + } + } \ No newline at end of file