add full_name query param

This commit is contained in:
dderbentsov
2023-07-30 02:27:47 +03:00
parent d716d7a06a
commit ca8ef86697
2 changed files with 9 additions and 2 deletions

View File

@@ -11,9 +11,12 @@ router = APIRouter(prefix='/persons')
@router.get('/', response_model=List[Person])
async def list_persons(
full_name: str = '',
persons_service: PersonService = Depends(get_persons_service),
) -> List[models.Person]:
return persons_service.list()
return persons_service.list(full_name)
@router.get('/{person_id}', response_model=PersonDetail)
async def get_person(

View File

@@ -1,4 +1,4 @@
from typing import Any
from typing import Any, List
from sqlalchemy.orm import Session
@@ -11,6 +11,10 @@ class PersonService(BaseService[Person, PersonCreate, Any]):
def __init__(self, db_session: Session):
super(PersonService, self).__init__(Person, db_session)
def list(self, full_name: str) -> List[Person]:
objs: List[Person] = self.db_session.query(Person).filter(Person.last_name.ilike(full_name)).all()
return objs
def create(self, obj: PersonCreate) -> Person:
print('= raw' * 3 )
print(obj)