Multiple level template inheritance in Jinja2?

One of the best way to achieve multiple level of templating using jinja2 is to use ‘include’
let say you have ‘base_layout.html‘ as your base template

<!DOCTYPE html>
<title>Base Layout</title>
<div>
  <h1>Base</h1>
  .... // write your code here
  {% block body %}{% endblock %}
</div>

and then you want to have ‘child_layout.html‘ that extends ‘base_layout.

{% include "base_layout.html" %}
  <div>
  ... // write your code here
  </div>
{% block body %}{% endblock %}

and now your page can just extends ‘child_layout.html‘ and it will have both base_layout.html and child_layout.html

{% extends "child_layout.html" %}
{% block body %}
  ...// write your code here
{% endblock %}

Leave a Comment

File not found.