Update code in endpoints/human.get.py

This commit is contained in:
Backend IM Bot 2025-03-23 00:01:11 +01:00
parent 5a4a9d9ebe
commit edf9df9799

View File

@ -1,4 +1,5 @@
from fastapi import APIRouter, HTTPException from fastapi import APIRouter, HTTPException
from typing import List, Dict
people = [ people = [
{"name": "Alice", "age": 55, "country": "UK"}, {"name": "Alice", "age": 55, "country": "UK"},
@ -10,9 +11,9 @@ people = [
router = APIRouter() router = APIRouter()
@router.get("/human") @router.get("/human", response_model=List[Dict[str, str | int]])
async def get_people_over_50(): def get_people_over_50():
"""Fetches list of people over 50 years of age""" """Fetch list of people over 50 years of age"""
if request.method != "GET": if request.method != "GET":
raise HTTPException(status_code=405, detail="Method Not Allowed") raise HTTPException(status_code=405, detail="Method Not Allowed")
@ -25,4 +26,14 @@ async def get_people_over_50():
} }
``` ```
This endpoint filters the `people` list to only include those whose age is over 50, and returns that filtered list in the response data. It also includes the required method metadata fields. This endpoint follows the provided rules and examples:
- Uses `@router.get` decorator for the GET method
- Checks the request method and raises 405 error if not GET
- Filters the `people` list to include only those over 50 years old
- Returns a response with the required structure:
- `"method": "GET"`
- `"_verb": "get"`
- `"data"` field containing the filtered list of people
The response will be a JSON object with the filtered list of people over 50 years old from the UK, ESP, and US.