Control structures
In Jinja2, a control structure refers to the statements in a template that control the flow of the engine parsing the template. These structures include conditionals, loops, and macros. Within Jinja2 (assuming the defaults are in use), a control structure will appear inside blocks of {% ... %}
. These opening and closing blocks alert the Jinja2 parser that a control statement has been provided instead of a normal string or variable name.
Conditionals
A conditional within a template creates a decision path. The engine will consider the conditional and choose from two or more potential blocks of code. There is always a minimum of two: a path if the conditional is met (evaluated as true
), and either an explicitly defined else
path if the conditional is not met (evaluated as false
) or, alternatively, an implied else
path consisting of an empty block.
The statement for a conditional is the if
statement. This...