我有一个基本模板,其中包含一个标题。标题包含以下代码。
但由于某些原因,我在if块之间没有输出,有什么原因吗? ps没有错误。模板的其余部分输出就好了。
base.html文件
<body>
{% include 'includes/header.html' %}
{% block sliderWrapper %}{% endblock %}
{% block titleWrapper %}{% endblock %}
<div id="wrapper">
<div class="container">
{% block mainWrapper %}{% endblock %}
</div>
</div>
{% include 'includes/footer.html' %}
{% include 'includes/copyright.html' %}
{% include 'includes/js.html' %}
</body>
下面的{%include'includes / header.html'%}的内容......一切都显示不是两个登录/注销链接。将它们带出街区并展示。 if
中没有声明 <div class="span9">
<div class="navbar navbar-inverse">
<div class="navbar-inner">
<a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</a>
<div class="nav-collapse collapse">
<ul class="nav">
<li><a href="/">Home</a></li>
<li><a href='{% url django.contrib.flatpages.views.flatpage url="how-it-works/" %}'>How does it work?</a></li>
<li><a href='{% url django.contrib.flatpages.views.flatpage url="how-it-works/" %}'>Download</a></li>
<li><a href="/member/registration/">Register</a></li>
{% if user.is_authenticated %}
<li><a href="/member/logout/">Logout</a></li>
{% else % }
<li><a href="/member/login/">Login</a></li>
{% endif %}
</ul>
</div>
</div>
</div>
已安装“django.contrib.auth.context_processors.auth”且已启用会话。
如果我输出{{ user }}
我得到的AnonymousUser就是我所不同的,所以,人们会认为'else'条件会被触发,但是这两个条件似乎都没有得到满足。
请求上下文也正在传递......
return render_to_response('pageRegistration.html', context,context_instance=RequestContext(request))
答案 0 :(得分:1)
我相信你的代码中有一个语法错误,它被忽视了:
{% else % }
应该是:
{% else %}
Django模板系统可能会查找正则表达式{%...%}
,因为它不匹配,它只被视为{% if %}{% endif %}
节点内的文本。