| Server IP : 3.96.16.70 / Your IP : 216.73.216.15 Web Server : Apache System : Linux ip-172-31-26-103.ca-central-1.compute.internal 6.1.163-186.299.amzn2023.x86_64 #1 SMP PREEMPT_DYNAMIC Tue Feb 24 16:35:42 UTC 2026 x86_64 User : ec2-user ( 1000) PHP Version : 8.4.18 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /usr/share/doc/python3-jinja2/html/ |
Upload File : |
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Jinja — Jinja Documentation (2.11.x)</title>
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<link rel="stylesheet" href="_static/jinja.css" type="text/css" />
<script id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
<script src="_static/jquery.js"></script>
<script src="_static/underscore.js"></script>
<script src="_static/doctools.js"></script>
<link rel="shortcut icon" href="_static/jinja-logo-sidebar.png"/>
<link rel="index" title="Index" href="genindex.html" />
<link rel="search" title="Search" href="search.html" />
<link rel="next" title="Introduction" href="intro.html" />
<script>DOCUMENTATION_OPTIONS.URL_ROOT = './';</script>
</head><body>
<div class="related" role="navigation" aria-label="related navigation">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
<a href="genindex.html" title="General Index"
accesskey="I">index</a></li>
<li class="right" >
<a href="py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="right" >
<a href="intro.html" title="Introduction"
accesskey="N">next</a> |</li>
<li class="nav-item nav-item-0"><a href="#">Jinja Documentation (2.11.x)</a> »</li>
<li class="nav-item nav-item-this"><a href="">Jinja</a></li>
</ul>
</div>
<div class="document">
<div class="documentwrapper">
<div class="bodywrapper">
<div class="body" role="main">
<div class="hide-header section" id="jinja">
<h1>Jinja<a class="headerlink" href="#jinja" title="Permalink to this headline">¶</a></h1>
<a class="reference external image-reference" href="https://palletsprojects.com/p/jinja/"><img alt="_images/jinja-logo.png" class="align-center" src="_images/jinja-logo.png" /></a>
<p>Jinja is a modern and designer-friendly templating language for Python,
modelled after Django’s templates. It is fast, widely used and secure
with the optional sandboxed template execution environment:</p>
<div class="highlight-html+jinja notranslate"><div class="highlight"><pre><span></span><span class="p"><</span><span class="nt">title</span><span class="p">></span><span class="cp">{%</span> <span class="k">block</span> <span class="nv">title</span> <span class="cp">%}{%</span> <span class="k">endblock</span> <span class="cp">%}</span><span class="p"></</span><span class="nt">title</span><span class="p">></span>
<span class="p"><</span><span class="nt">ul</span><span class="p">></span>
<span class="cp">{%</span> <span class="k">for</span> <span class="nv">user</span> <span class="k">in</span> <span class="nv">users</span> <span class="cp">%}</span>
<span class="p"><</span><span class="nt">li</span><span class="p">><</span><span class="nt">a</span> <span class="na">href</span><span class="o">=</span><span class="s">"</span><span class="cp">{{</span> <span class="nv">user.url</span> <span class="cp">}}</span><span class="s">"</span><span class="p">></span><span class="cp">{{</span> <span class="nv">user.username</span> <span class="cp">}}</span><span class="p"></</span><span class="nt">a</span><span class="p">></</span><span class="nt">li</span><span class="p">></span>
<span class="cp">{%</span> <span class="k">endfor</span> <span class="cp">%}</span>
<span class="p"></</span><span class="nt">ul</span><span class="p">></span>
</pre></div>
</div>
<p>Features:</p>
<ul class="simple">
<li><p>sandboxed execution</p></li>
<li><p>powerful automatic HTML escaping system for XSS prevention</p></li>
<li><p>template inheritance</p></li>
<li><p>compiles down to the optimal python code just in time</p></li>
<li><p>optional ahead-of-time template compilation</p></li>
<li><p>easy to debug. Line numbers of exceptions directly point to
the correct line in the template.</p></li>
<li><p>configurable syntax</p></li>
</ul>
<div class="toctree-wrapper compound">
<p class="caption"><span class="caption-text">Contents:</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="intro.html">Introduction</a><ul>
<li class="toctree-l2"><a class="reference internal" href="intro.html#prerequisites">Prerequisites</a></li>
<li class="toctree-l2"><a class="reference internal" href="intro.html#installation">Installation</a></li>
<li class="toctree-l2"><a class="reference internal" href="intro.html#basic-api-usage">Basic API Usage</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="api.html">API</a><ul>
<li class="toctree-l2"><a class="reference internal" href="api.html#basics">Basics</a></li>
<li class="toctree-l2"><a class="reference internal" href="api.html#unicode">Unicode</a></li>
<li class="toctree-l2"><a class="reference internal" href="api.html#high-level-api">High Level API</a></li>
<li class="toctree-l2"><a class="reference internal" href="api.html#autoescaping">Autoescaping</a></li>
<li class="toctree-l2"><a class="reference internal" href="api.html#notes-on-identifiers">Notes on Identifiers</a></li>
<li class="toctree-l2"><a class="reference internal" href="api.html#undefined-types">Undefined Types</a></li>
<li class="toctree-l2"><a class="reference internal" href="api.html#the-context">The Context</a></li>
<li class="toctree-l2"><a class="reference internal" href="api.html#loaders">Loaders</a></li>
<li class="toctree-l2"><a class="reference internal" href="api.html#bytecode-cache">Bytecode Cache</a></li>
<li class="toctree-l2"><a class="reference internal" href="api.html#async-support">Async Support</a></li>
<li class="toctree-l2"><a class="reference internal" href="api.html#policies">Policies</a></li>
<li class="toctree-l2"><a class="reference internal" href="api.html#utilities">Utilities</a></li>
<li class="toctree-l2"><a class="reference internal" href="api.html#exceptions">Exceptions</a></li>
<li class="toctree-l2"><a class="reference internal" href="api.html#custom-filters">Custom Filters</a></li>
<li class="toctree-l2"><a class="reference internal" href="api.html#evaluation-context">Evaluation Context</a></li>
<li class="toctree-l2"><a class="reference internal" href="api.html#custom-tests">Custom Tests</a></li>
<li class="toctree-l2"><a class="reference internal" href="api.html#the-global-namespace">The Global Namespace</a></li>
<li class="toctree-l2"><a class="reference internal" href="api.html#low-level-api">Low Level API</a></li>
<li class="toctree-l2"><a class="reference internal" href="api.html#the-meta-api">The Meta API</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="sandbox.html">Sandbox</a><ul>
<li class="toctree-l2"><a class="reference internal" href="sandbox.html#module-jinja2.sandbox">API</a></li>
<li class="toctree-l2"><a class="reference internal" href="sandbox.html#operator-intercepting">Operator Intercepting</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="nativetypes.html">Native Python Types</a><ul>
<li class="toctree-l2"><a class="reference internal" href="nativetypes.html#examples">Examples</a></li>
<li class="toctree-l2"><a class="reference internal" href="nativetypes.html#api">API</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="templates.html">Template Designer Documentation</a><ul>
<li class="toctree-l2"><a class="reference internal" href="templates.html#synopsis">Synopsis</a></li>
<li class="toctree-l2"><a class="reference internal" href="templates.html#variables">Variables</a></li>
<li class="toctree-l2"><a class="reference internal" href="templates.html#filters">Filters</a></li>
<li class="toctree-l2"><a class="reference internal" href="templates.html#tests">Tests</a></li>
<li class="toctree-l2"><a class="reference internal" href="templates.html#comments">Comments</a></li>
<li class="toctree-l2"><a class="reference internal" href="templates.html#whitespace-control">Whitespace Control</a></li>
<li class="toctree-l2"><a class="reference internal" href="templates.html#escaping">Escaping</a></li>
<li class="toctree-l2"><a class="reference internal" href="templates.html#line-statements">Line Statements</a></li>
<li class="toctree-l2"><a class="reference internal" href="templates.html#template-inheritance">Template Inheritance</a></li>
<li class="toctree-l2"><a class="reference internal" href="templates.html#html-escaping">HTML Escaping</a></li>
<li class="toctree-l2"><a class="reference internal" href="templates.html#list-of-control-structures">List of Control Structures</a></li>
<li class="toctree-l2"><a class="reference internal" href="templates.html#import-context-behavior">Import Context Behavior</a></li>
<li class="toctree-l2"><a class="reference internal" href="templates.html#expressions">Expressions</a></li>
<li class="toctree-l2"><a class="reference internal" href="templates.html#list-of-builtin-filters">List of Builtin Filters</a></li>
<li class="toctree-l2"><a class="reference internal" href="templates.html#list-of-builtin-tests">List of Builtin Tests</a></li>
<li class="toctree-l2"><a class="reference internal" href="templates.html#list-of-global-functions">List of Global Functions</a></li>
<li class="toctree-l2"><a class="reference internal" href="templates.html#extensions">Extensions</a></li>
<li class="toctree-l2"><a class="reference internal" href="templates.html#autoescape-overrides">Autoescape Overrides</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="extensions.html">Extensions</a><ul>
<li class="toctree-l2"><a class="reference internal" href="extensions.html#adding-extensions">Adding Extensions</a></li>
<li class="toctree-l2"><a class="reference internal" href="extensions.html#i18n-extension">i18n Extension</a></li>
<li class="toctree-l2"><a class="reference internal" href="extensions.html#expression-statement">Expression Statement</a></li>
<li class="toctree-l2"><a class="reference internal" href="extensions.html#loop-controls">Loop Controls</a></li>
<li class="toctree-l2"><a class="reference internal" href="extensions.html#with-statement">With Statement</a></li>
<li class="toctree-l2"><a class="reference internal" href="extensions.html#autoescape-extension">Autoescape Extension</a></li>
<li class="toctree-l2"><a class="reference internal" href="extensions.html#debug-extension">Debug Extension</a></li>
<li class="toctree-l2"><a class="reference internal" href="extensions.html#module-jinja2.ext">Writing Extensions</a></li>
<li class="toctree-l2"><a class="reference internal" href="extensions.html#example-extensions">Example Extensions</a></li>
<li class="toctree-l2"><a class="reference internal" href="extensions.html#extension-api">Extension API</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="integration.html">Integration</a><ul>
<li class="toctree-l2"><a class="reference internal" href="integration.html#babel-integration">Babel Integration</a></li>
<li class="toctree-l2"><a class="reference internal" href="integration.html#pylons">Pylons</a></li>
<li class="toctree-l2"><a class="reference internal" href="integration.html#textmate">TextMate</a></li>
<li class="toctree-l2"><a class="reference internal" href="integration.html#vim">Vim</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="switching.html">Switching from other Template Engines</a><ul>
<li class="toctree-l2"><a class="reference internal" href="switching.html#jinja-1">Jinja 1</a></li>
<li class="toctree-l2"><a class="reference internal" href="switching.html#django">Django</a></li>
<li class="toctree-l2"><a class="reference internal" href="switching.html#mako">Mako</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="tricks.html">Tips and Tricks</a><ul>
<li class="toctree-l2"><a class="reference internal" href="tricks.html#null-master-fallback">Null-Master Fallback</a></li>
<li class="toctree-l2"><a class="reference internal" href="tricks.html#alternating-rows">Alternating Rows</a></li>
<li class="toctree-l2"><a class="reference internal" href="tricks.html#highlighting-active-menu-items">Highlighting Active Menu Items</a></li>
<li class="toctree-l2"><a class="reference internal" href="tricks.html#accessing-the-parent-loop">Accessing the parent Loop</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="faq.html">Frequently Asked Questions</a><ul>
<li class="toctree-l2"><a class="reference internal" href="faq.html#why-is-it-called-jinja">Why is it called Jinja?</a></li>
<li class="toctree-l2"><a class="reference internal" href="faq.html#how-fast-is-it">How fast is it?</a></li>
<li class="toctree-l2"><a class="reference internal" href="faq.html#how-compatible-is-jinja-with-django">How Compatible is Jinja with Django?</a></li>
<li class="toctree-l2"><a class="reference internal" href="faq.html#isn-t-it-a-terrible-idea-to-put-logic-into-templates">Isn’t it a terrible idea to put Logic into Templates?</a></li>
<li class="toctree-l2"><a class="reference internal" href="faq.html#why-is-autoescaping-not-the-default">Why is Autoescaping not the Default?</a></li>
<li class="toctree-l2"><a class="reference internal" href="faq.html#why-is-the-context-immutable">Why is the Context immutable?</a></li>
<li class="toctree-l2"><a class="reference internal" href="faq.html#my-tracebacks-look-weird-what-s-happening">My tracebacks look weird. What’s happening?</a></li>
<li class="toctree-l2"><a class="reference internal" href="faq.html#why-is-there-no-python-2-3-2-4-2-5-2-6-3-1-3-2-3-3-support">Why is there no Python 2.3/2.4/2.5/2.6/3.1/3.2/3.3 support?</a></li>
<li class="toctree-l2"><a class="reference internal" href="faq.html#my-macros-are-overridden-by-something">My Macros are overridden by something</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="changelog.html">Changelog</a><ul>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#version-2-11-3-1-al2023-0-6">Version 2.11.3-1.al2023.0.6</a></li>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#version-2-11-3-1-al2023-0-5">Version 2.11.3-1.al2023.0.5</a></li>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#version-2-11-3-1-al2023-0-4">Version 2.11.3-1.al2023.0.4</a></li>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#version-2-11-3">Version 2.11.3</a></li>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#version-2-11-2">Version 2.11.2</a></li>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#version-2-11-1">Version 2.11.1</a></li>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#version-2-11-0">Version 2.11.0</a></li>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#version-2-10-3">Version 2.10.3</a></li>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#version-2-10-2">Version 2.10.2</a></li>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#version-2-10-1">Version 2.10.1</a></li>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#version-2-10">Version 2.10</a></li>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#version-2-9-6">Version 2.9.6</a></li>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#version-2-9-5">Version 2.9.5</a></li>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#version-2-9-4">Version 2.9.4</a></li>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#version-2-9-3">Version 2.9.3</a></li>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#version-2-9-2">Version 2.9.2</a></li>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#version-2-9-1">Version 2.9.1</a></li>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#version-2-9">Version 2.9</a></li>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#version-2-8-1">Version 2.8.1</a></li>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#version-2-8">Version 2.8</a></li>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#version-2-7-3">Version 2.7.3</a></li>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#version-2-7-2">Version 2.7.2</a></li>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#version-2-7-1">Version 2.7.1</a></li>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#version-2-7">Version 2.7</a></li>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#version-2-6">Version 2.6</a></li>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#version-2-5-5">Version 2.5.5</a></li>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#version-2-5-4">Version 2.5.4</a></li>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#version-2-5-3">Version 2.5.3</a></li>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#version-2-5-2">Version 2.5.2</a></li>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#version-2-5-1">Version 2.5.1</a></li>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#version-2-5">Version 2.5</a></li>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#version-2-4-1">Version 2.4.1</a></li>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#version-2-4">Version 2.4</a></li>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#version-2-3-1">Version 2.3.1</a></li>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#version-2-3">Version 2.3</a></li>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#version-2-2-1">Version 2.2.1</a></li>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#version-2-2">Version 2.2</a></li>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#version-2-1-1">Version 2.1.1</a></li>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#version-2-1">Version 2.1</a></li>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#version-2-0">Version 2.0</a></li>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#version-2-0rc1">Version 2.0rc1</a></li>
</ul>
</li>
</ul>
</div>
<ul class="simple">
<li><p><a class="reference internal" href="genindex.html"><span class="std std-ref">Index</span></a></p></li>
<li><p><a class="reference internal" href="search.html"><span class="std std-ref">Search Page</span></a></p></li>
</ul>
</div>
<div class="clearer"></div>
</div>
</div>
</div>
<span id="sidebar-top"></span>
<div class="sphinxsidebar" role="navigation" aria-label="main navigation">
<div class="sphinxsidebarwrapper">
<h3>Project Links</h3>
<ul>
<li><a href="https://palletsprojects.com/donate">Donate to Pallets</a>
<li><a href="https://palletsprojects.com/p/jinja/">Jinja Website</a>
<li><a href="https://pypi.org/project/Jinja2/">PyPI releases</a>
<li><a href="https://github.com/pallets/jinja/">Source Code</a>
<li><a href="https://github.com/pallets/jinja/issues/">Issue Tracker</a>
</ul>
<div id="searchbox" style="display: none" role="search">
<h3 id="searchlabel">Quick search</h3>
<div class="searchformwrapper">
<form class="search" action="search.html" method="get">
<input type="text" name="q" aria-labelledby="searchlabel" />
<input type="submit" value="Go" />
</form>
</div>
</div>
<script>$('#searchbox').show(0);</script>
</div>
</div>
<div class="clearer"></div>
</div>
<div class="footer" role="contentinfo">
© Copyright 2025 Pallets.
Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 3.4.3.
</div>
<script src="_static/version_warning_offset.js"></script>
</body>
</html>