{{ datevar|date: dateformat}}

won't parse.

You get the error:
Could not parse the remainder: ': dateformat' from 'datevar|date:
dateformat'

Turns out that unlike most other places, spaces ARE significant here.
It could be fixed by changing the filter_raw_string on line 448 of
django/template/__init__.py to eat the whitespace before and after the
variable or constant or i18n string with something like

\s* added to this portion of the regex for parsing

         (?:%(arg_sep)s\s*    # Added here
             (?:
              %(i18n_open)s"(?P<i18n_arg>%(str)s)"%(i18n_close)s|
              "(?P<constant_arg>%(str)s)"|
              (?P<var_arg>[%(var_chars)s]+)
             )\s*                      # and here

It should probably either be fixed or at least documented.

I'm posting this here so that others can find it quickly and
understand the cause of the error message.  I wasted over an hour
because the error message wasn't clear enough to say, hey stupid,
white space all of a sudden matters with filter arguments.

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com
To unsubscribe from this group, send email to 
django-users+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to