Opened 3 hours ago

Last modified 2 hours ago

#36758 new Uncategorized

Template parser errors when using whitespace around pipe for certain filters — at Version 1

Reported by: Stephen Skett Owned by:
Component: Template system Version: 4.2
Severity: Normal Keywords: template, filter, pipe, whitespace, divisibleby, center
Cc: Triage Stage: Unreviewed
Has patch: no Needs documentation: no
Needs tests: no Patch needs improvement: no
Easy pickings: no UI/UX: no

Description (last modified by Stephen Skett)

Based on discussion from previous support ticket #4746, I believe it should now be possible to add whitespace around the pipe-character when using a filter in a Django-template, if that is stylistically preferred. However, I experience 'TemplateSyntaxError' when I use whitespace around the '|', specifically the built-in divisibleby and center filters - as in the following examples.

With divisibleby in an if-tag (error: "Could not parse the remainder: '|' from '|'"):

{% for obj in some_collection %}
  {% if forloop.counter0 | divisibleby:num_items_per_row %}
    {% comment %}Some HTML here...{% endcomment %}
  {% endif %}
{% endfor %}

And, with center in a with-tag (error: "'with' expected at least one variable assignment"):

{% with '' | center:loop_limit_val as loop_range %}
  {% for _ in loop_range %}
    {% comment %}Some HTML here...{% endcomment %}
  {% endfor %}
{% endwith %}

I don't seem to encounter this error for most of the other built-in template-filters which I commonly use (e.g. date, floatformat, etc.), or with custom filters in my tag-libraries. Is this a bug with divisibleby / center, or am I missing something?

Change History (1)

comment:1 by Stephen Skett, 2 hours ago

Description: modified (diff)
Keywords: center added
Summary: Template parserTemplate parser errors when using whitespace around pipe for certain filters
Note: See TracTickets for help on using tickets.
Back to Top