@router.get("/", response_class=HTMLResponse)
async def dashboard(request: Request, db: Session = Depends(get_db)):
# ... logic to fetch leads and stats ...
# This involves complex SQLAlchemy queries with joined loads
# to ensure the Post and Lead data is fetched efficiently.
context = {"leads": leads, "stats": stats, ...}
if request.headers.get("HX-Request"):
return templates.TemplateResponse(
request=request,
name="fragments/dashboard_table.html",
context=context
)
return templates.TemplateResponse(
request=request,
name="pages/dashboard.html",
context=context
)