Make template rendering compatible across Starlette versions

This commit is contained in:
Krikorios
2026-05-07 13:05:24 +03:00
parent aed2fdc801
commit 68d13dbf57
6 changed files with 71 additions and 37 deletions
+8 -8
View File
@@ -1,6 +1,7 @@
from fastapi import APIRouter, Request
from fastapi.responses import Response
from fastapi.templating import Jinja2Templates
from services.template_utils import render_template
from services.search_service import (
get_person_with_properties,
@@ -37,10 +38,11 @@ async def search(
persons[0].get("search_scope"),
)
return templates.TemplateResponse(
return render_template(
templates,
request,
"search.html",
{
"request": request,
"q": q,
"property_number": property_number,
"district": district,
@@ -56,10 +58,11 @@ async def search(
async def person_detail(request: Request, person_id: int, search_scope: str = ""):
data = get_person_with_properties(person_id, search_scope.strip() or None)
if not data:
return templates.TemplateResponse(
return render_template(
templates,
request,
"search.html",
{
"request": request,
"error": "Person not found",
"q": "",
"persons": [],
@@ -71,10 +74,7 @@ async def person_detail(request: Request, person_id: int, search_scope: str = ""
},
status_code=404,
)
return templates.TemplateResponse(
"person_detail.html",
{"request": request, **data},
)
return render_template(templates, request, "person_detail.html", data)
@router.get("/persons/{person_id}/export")