feat: implemented "order by" API parameters for recipe, food, and unit queries (#1356)

* Added API params to order by different properties

* fix for incorrect var name

* removed invalid default order_by

* implemented fallback for invalid user input
This commit is contained in:
Michael Genson
2022-06-11 12:56:55 -05:00
committed by GitHub
parent 932f4a72df
commit 7541175b75
6 changed files with 48 additions and 8 deletions

View File

@@ -194,7 +194,14 @@ class RecipeController(BaseRecipeController):
@router.get("", response_model=list[RecipeSummary])
def get_all(self, q: RecipeGetAll = Depends(RecipeGetAll)):
items = self.repo.summary(self.user.group_id, start=q.start, limit=q.limit, load_foods=q.load_food)
items = self.repo.summary(
self.user.group_id,
start=q.start,
limit=q.limit,
load_foods=q.load_food,
order_by=q.order_by,
order_descending=q.order_descending,
)
new_items = []
for item in items:

View File

@@ -39,7 +39,7 @@ class IngredientFoodsController(BaseUserController):
@router.get("", response_model=list[IngredientFood])
def get_all(self, q: GetAll = Depends(GetAll)):
return self.repo.get_all(start=q.start, limit=q.limit)
return self.repo.get_all(start=q.start, limit=q.limit, order_by=q.order_by, order_descending=q.order_descending)
@router.post("", response_model=IngredientFood, status_code=201)
def create_one(self, data: CreateIngredientFood):

View File

@@ -39,7 +39,7 @@ class IngredientUnitsController(BaseUserController):
@router.get("", response_model=list[IngredientUnit])
def get_all(self, q: GetAll = Depends(GetAll)):
return self.repo.get_all(start=q.start, limit=q.limit)
return self.repo.get_all(start=q.start, limit=q.limit, order_by=q.order_by, order_descending=q.order_descending)
@router.post("", response_model=IngredientUnit, status_code=201)
def create_one(self, data: CreateIngredientUnit):