Skip to content

Commit

Permalink
feat(repository.py): add repository
Browse files Browse the repository at this point in the history
  • Loading branch information
ZhikharevAl committed Feb 28, 2024
1 parent 12d466d commit 54851ef
Showing 1 changed file with 26 additions and 0 deletions.
26 changes: 26 additions & 0 deletions repository.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
from sqlalchemy import select

from database import new_session, TaskOrm
from schemas import STaskAdd, STask


class TaskRepository:
@classmethod
async def add_one(cls, data: STaskAdd) -> int:
async with new_session() as session:
task_dict = data.model_dump()

task = TaskOrm(**task_dict)
session.add(task)
await session.flush()
await session.commit()
return task.id

@classmethod
async def find_all(cls) -> list[STask]:
async with new_session() as session:
query = select(TaskOrm)
result = await session.execute(query)
task_models = result.scalars().all()
task_schemas = [STask.model_validate(task_model) for task_model in task_models]
return task_schemas

0 comments on commit 54851ef

Please sign in to comment.