Files
toolbox/utils/web.py
T

40 lines
764 B
Python

from fastapi import Request
from fastapi.templating import Jinja2Templates
from typing import Any
import config
templates = Jinja2Templates(directory=config.TEMPLATES_DIR)
def getUrl(name: str, **path_params: Any):
from api import app
try:
url = app.url_path_for(name, **path_params)
except Exception:
url = app.url_path_for(name)
return url
async def render(
request: Request,
):
context = {
"request": request,
"content": {"app_secret": config.APP_SECRET},
}
fileName = f"{request.scope['path']}/index.html"
response = templates.TemplateResponse(fileName, context)
return response
def_list = [
getUrl,
]
for def_ in def_list:
templates.env.globals[def_.__name__] = def_