add full_name query param
This commit is contained in:
@@ -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(
|
||||
|
||||
@@ -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)
|
||||
|
||||
Reference in New Issue
Block a user