【发布时间】:2019-07-27 20:44:02
【问题描述】:
我一直在搞乱 Django,我遇到了这个问题,当它们都是相同的字符串时,下面标记的 if 中的比较返回 false。 如果 request.path 是 /test/ 那么 "/{{values|lower}}/" 也是 /test/ 但它们不相等。为什么会这样?
<form class="btn-group btn-group-sm btn-group-toggle btn-block" action="" method="POST">
{% for i in name %}
{% csrf_token %}
{{ form.as_p }}
<input {% cycle name.0 name.1 name.2 name.3 name.4 as values %}
// HERE
{% if press == values or request.path == "/{{values|lower}}/" %}
class="btn btn-outline-dark btn-block m-2 active"
{% else %}
class="btn btn-outline-dark btn-block m-2"
{% endif %}
type="Submit" name="{{values}}" value="{{values}}"/>
// THESE TWO LINES PRINT THE STRINGS ON PAGE
{{request.path}}
/{{values|lower}}/
{% endfor %}
</form>
【问题讨论】:
-
您不能只在标签内使用变量语法。
-
刚试了一下,还是不行。这仍然返回错误:{% if request.path == "/values|lower/" %}
-
是的,这将把路径与文字字符串“/values|lower/”进行比较。
-
是的,我想,但我尝试过的其他方法只会导致错误。有没有办法添加正斜杠?
标签: python django python-3.x django-templates