#6048 closed (worksforme)
compile_filter() does not allow quote escaping for constant strings
Reported by: | miracle2k | Owned by: | nobody |
---|---|---|---|
Component: | Template system | Version: | dev |
Severity: | Keywords: | ||
Cc: | Triage Stage: | Unreviewed | |
Has patch: | no | Needs documentation: | no |
Needs tests: | no | Patch needs improvement: | no |
Easy pickings: | no | UI/UX: | no |
Description
{{ "abc \" def" }}
{% mytag with value="abc \" def" %}
In both cases, Parser.compile_filter().resolve() will return the string as
abc \" def
Actually, FilterExpression.init() in django.template, which does the parsing, calls
constant_arg.replace(r'\"', '"'))
when resolving the filter part of the expression - but not for the variable part.
A workaround is:
0|default:"abc \" def"
Change History (2)
comment:1 by , 17 years ago
Resolution: | → worksforme |
---|---|
Status: | new → closed |
comment:2 by , 17 years ago
I'm fairly sure that the difference between the original reporter's observation and Chris' is because the latter's checkout is more up to date. This was only fixed in [6724] (a few hours ago).
Seems to work for me...
Want to make up some tests which show your problem and reopen?