Django';的逐字模板标记不阻止字符转义
我正在使用Django的内置模板系统,以及下划线.js。因此,我需要Django忽略下划线识别和呈现的特殊字符 我已经检查了django的版本,它是1.5.3 一个非常简单的例子:Django';的逐字模板标记不阻止字符转义,django,django-templates,underscore.js,Django,Django Templates,Underscore.js,我正在使用Django的内置模板系统,以及下划线.js。因此,我需要Django忽略下划线识别和呈现的特殊字符 我已经检查了django的版本,它是1.5.3 一个非常简单的例子: {% verbatim %} <%= content %> {% endverbatim %} 显然,当下划线获得HTML时,它没有工作要做,因为它找不到要解析的正确标记。我已经尝试过几种故障排除解决方案,但都不起作用: 拼写错误“verbatim”会导致错误,这让我相信Django的模板引擎正在
{% verbatim %}
<%= content %>
{% endverbatim %}
显然,当下划线获得HTML时,它没有工作要做,因为它找不到要解析的正确标记。我已经尝试过几种故障排除解决方案,但都不起作用:
{% extends "base.html" %}
{# Determine which navigation element is 'active' #}
{% block nav %}
{% with 'active' as lessons_active %}
{{ block.super }}
{% endwith %}
{% endblock %}
{% block content %}
<div class="col-md-2 lesson-left-menu">
<a href="#"><span class="glyphicon glyphicon-arrow-left"></span> Back to Lessons</a>
</div>
<div class="col-md-8 lesson-container">
<div class="slide multi-slide">
<div class="lesson-header">
{% verbatim %}
<h3><%= moduleTitle %> <small><%= title %></small></h3>
{% endverbatim %}
</div>
<!-- Populate dyn. based on # slides in lesson -->
{% spaceless %}
<div class="lesson-progress">
<div class="bar complete" style="width: 20%"></div>
<div class="bar complete" style="width: 20%"></div>
<div class="bar" style="width: 20%"></div>
<div class="bar" style="width: 20%"></div>
<div class="bar" style="width: 20%"></div>
</div>
{% endspaceless %}
{% verbatim %}
<%= content %>
{% endverbatim %}
<div class="well">
<ul class="answers short-multi greek-text" style="min-height: 40px">
</ul>
</div>
{% spaceless %}
{% verbatim %}
<% _.each(options, function(optionSet) { %>
<ul class="options short-multi greek-text inline">
<% _.each(optionSet, function(option) { %>
<li><a href="#" data-value="<%= option.value %>"><%= option.display %></a></li>
<% }); %>
</ul>
<% }); %>
{% endverbatim %}
{% endspaceless %}
</div>
</div>
{% endblock %}
{%extends“base.html”%}
{#确定哪个导航元素是“活动的”#}
{%block nav%}
{%以“活动”作为课程\u活动%}
{{block.super}}
{%endwith%}
{%endblock%}
{%block content%}
{%verbatim%}
{%endverbatim%}
{%spaceless%}
{%endspaceless%}
{%verbatim%}
{%endverbatim%}
{%spaceless%}
{%verbatim%}
{%endverbatim%}
{%endspaceless%}
{%endblock%}
您是否已经尝试过,但没有将代码包装到这些块中(我知道这是一个延伸)
在您的情况下,您不必做任何事情来正确渲染。我在Django项目中有相同的设置
您不必关闭
{%autoescape%}
,除非您正在向页面中注入文本(通过变量或其他方式),也不必使用{%Verbatim%}
,除非您想忽略django标记 逐字翻译仅在Django模板语法不应被解析的情况下才相关,因此{{…}
和{%…%}
。在本例中,您有
,它不是Django模板语法。所以有别的事困扰着你。您可能想看看中间件,因为它们可能正在进行一些不必要的内容修改。@bouke我明白您的意思。我还尝试了{%autoescape off%}
和{{‘“| safe}}}
在与{%verbatim%}
相同的位置,但这也没有解决问题。不过,我不认为发生了什么。
{% extends "base.html" %}
{# Determine which navigation element is 'active' #}
{% block nav %}
{% with 'active' as lessons_active %}
{{ block.super }}
{% endwith %}
{% endblock %}
{% block content %}
<div class="col-md-2 lesson-left-menu">
<a href="#"><span class="glyphicon glyphicon-arrow-left"></span> Back to Lessons</a>
</div>
<div class="col-md-8 lesson-container">
<div class="slide multi-slide">
<div class="lesson-header">
{% verbatim %}
<h3><%= moduleTitle %> <small><%= title %></small></h3>
{% endverbatim %}
</div>
<!-- Populate dyn. based on # slides in lesson -->
{% spaceless %}
<div class="lesson-progress">
<div class="bar complete" style="width: 20%"></div>
<div class="bar complete" style="width: 20%"></div>
<div class="bar" style="width: 20%"></div>
<div class="bar" style="width: 20%"></div>
<div class="bar" style="width: 20%"></div>
</div>
{% endspaceless %}
{% verbatim %}
<%= content %>
{% endverbatim %}
<div class="well">
<ul class="answers short-multi greek-text" style="min-height: 40px">
</ul>
</div>
{% spaceless %}
{% verbatim %}
<% _.each(options, function(optionSet) { %>
<ul class="options short-multi greek-text inline">
<% _.each(optionSet, function(option) { %>
<li><a href="#" data-value="<%= option.value %>"><%= option.display %></a></li>
<% }); %>
</ul>
<% }); %>
{% endverbatim %}
{% endspaceless %}
</div>
</div>
{% endblock %}