]> git.ipfire.org Git - thirdparty/jinja.git/commitdiff
Add support for tests in `{% for %}`
authorKevin <kevin@kevin-brown.com>
Thu, 14 May 2020 00:14:40 +0000 (20:14 -0400)
committerKevin <kevin@kevin-brown.com>
Thu, 14 May 2020 00:14:40 +0000 (20:14 -0400)
new_parser.py
test_template.jinja

index d83c0a47ed2a18127d8ee2be7c9b5e2b574e467b..b8a6ccc33a470f9faed024570af8e6df89a4bd9e 100644 (file)
@@ -193,7 +193,11 @@ def parse_block_for(ast):
     target = parse_variable(block_parameters[0]['value'], variable_context='store')\r
     iter = parse_variable(block_parameters[2]['value'])\r
 \r
-    if len(block_parameters) > 1:\r
+    if len(block_parameters) > 3:\r
+        if block_parameters[3]['value']['variable'] == 'if':\r
+            test = parse_conditional_expression(block_parameters[4]['value'])\r
+\r
+    if len(block_parameters) > 3:\r
         recursive = block_parameters[-1]['value']['variable'] == 'recursive'\r
 \r
     else_ = _split_contents_at_block(ast['contents'], 'else')\r
index 16bea774fe5b9f5a7a54d8114222e5515d216eec..a994464c8c6befb564dc34e3bee5c6ae24304886 100644 (file)
@@ -98,3 +98,6 @@ across lines #}
 {% else %}\r
     Kenny looks okay --- so far\r
 {% endif %}\r
+{% for user in users if not user.hidden %}\r
+    <li>{{ user.username|e }}</li>\r
+{% endfor %}
\ No newline at end of file