Templates
Generating HTML directly in Python strings is tedious and dangerous (XSS vulnerabilities). BustAPI uses Jinja2, the most popular Python templating engine, for this purpose.
Directory Structure
BustAPI expects a templates folder in the same directory as your application module.
Rendering
Use the render_template function. You can pass any number of keyword arguments to be available in the template context.
from bustapi import render_template
@app.route("/hello/<name>")
def hello(name):
return render_template('index.html', name=name)
Template Inheritance
The power of Jinja2 comes from inheritance. Define a base layout and extend it.
base.html
<!doctype html>
<html>
<head>
<title>{% block title %}{% endblock %}</title>
</head>
<body>
{% block content %}{% endblock %}
</body>
</html>