import inspect from collections.abc import Mapping def render_template(templates, request, template_name: str, context: Mapping | None = None, **response_kwargs): context_dict = dict(context or {}) parameters = list(inspect.signature(templates.TemplateResponse).parameters) if parameters and parameters[0] == "request": return templates.TemplateResponse(request, template_name, context_dict, **response_kwargs) context_dict.setdefault("request", request) return templates.TemplateResponse(template_name, context_dict, **response_kwargs)