Basic users and cities api

This commit is contained in:
Eden Kirin
2023-09-14 17:44:02 +02:00
parent c70169004d
commit 4875837d4e
20 changed files with 815 additions and 0 deletions

32
app/domain/city.py Normal file
View File

@ -0,0 +1,32 @@
from datetime import datetime
from typing import Annotated
from litestar.contrib.sqlalchemy.base import UUIDBase
from litestar.contrib.sqlalchemy.dto import SQLAlchemyDTO
from litestar.dto import DTOConfig
from sqlalchemy.orm import Mapped
from app.lib import service
from app.lib.filter_repository import FilterRepository
class City(UUIDBase):
__tablename__ = "cities" # type: ignore[assignment]
name: Mapped[str]
postal_code: Mapped[str]
created_at: Mapped[datetime]
modified_at: Mapped[datetime]
class Repository(FilterRepository[City]):
model_type = City
class Service(service.Service[City]):
repository_type = Repository
write_config = DTOConfig(exclude={"id"})
CityWriteDTO = SQLAlchemyDTO[Annotated[City, write_config]]
CityReadDTO = SQLAlchemyDTO[City]