2013-02-27 73 views
4

制作应用程序时出现此错误,我认为问题位于login.html中,因为它指向错误表。是因为我有2个{%block content%}它冲突吗?谢谢你对我的帮助名称为'content'的Django'block'标记不止一次出现

TemplateSyntaxError at /login/ 

'block' tag with name 'content' appears more than once 

Request Method:  GET 
Request URL: http://127.0.0.1:8000/login/ 
Django Version:  1.4.3 
Exception Type:  TemplateSyntaxError 
Exception Value:  

'block' tag with name 'content' appears more than once 

Error during template rendering 

In template C:\djcode\mysite\drinker\templates\login.html, error at line 21 
'block' tag with name 'content' appears more than once 
11 <div class="register_div"> 
12 {% if form.password.errors %}<p class="error">{{ form.password.errors }}</p>{%  endif %} 
13 <p><label for="password"{% if form.password.errors %} class="error"{% endif %}>Password:</label></p> 
14 <p>{{ form.password }}</p> 
15 </div> 
16 <p><input type="submit" alt="register" /></p> 
17 </form> 
18 <p>Forgot your password? <a href="/resetpassword/">Reset it!</a></p> 
19 {% endblock %} 
20 {% extends "base.html" %} 
21 {% block content %} 

我的login.html

{% extends "base.html" %} 
{% block content %} 
<form action="" method="post"> 
{% csrf_token %} 
{% if form.errors %}<p>Please correct the following fields:</p>{% endif %} 
<div class="register_div"> 
     {% if form.username.errors %}<p class="error">{{ form.username.errors }}</p>{% endif %} 
     <p><label for="username"{% if form.username.errors %} class="error"{% endif %}>Username:</label></p> 
     <p>{{ form.username }}</p> 
</div> 
<div class="register_div"> 
     {% if form.password.errors %}<p class="error">{{ form.password.errors }}</p>{% endif %} 
     <p><label for="password"{% if form.password.errors %} class="error"{% endif %}>Password:</label></p> 
     <p>{{ form.password }}</p> 
</div> 
<p><input type="submit" alt="register" /></p> 
</form> 
<p>Forgot your password? <a href="/resetpassword/">Reset it!</a></p> 
{% endblock %} 

我也得到一个回溯链接到我的views.py

Traceback Switch to copy-and-paste view 

    C:\Python26\Lib\site-packages\django\core\handlers\base.py in get_response 

          response = callback(request, *callback_args, **callback_kwargs) 

    ... 
    ▶ Local vars 
    C:\djcode\mysite\drinker\views.py in LoginRequest 

         return render_to_response('login.html', context,  context_instance=RequestContext(request)) 

    ... 
    ▶ Local vars 

回答

2

是的,错误是很清楚:你有两个名为“内容”的块。

说实话,我不明白你在做什么,因为第二块似乎是第一块的确切副本。你也不能有两个extends标签。

+0

哦,男人,我看到了错误。感谢Daniel – donkeyboy72 2013-02-27 13:00:27

+0

我习惯于先使用Google搜索错误消息,然后思考它们,因为很少有这样的证据(我对django很陌生),但我不得不承认这很清楚... – sage 2013-12-31 04:56:42

+0

如果我想在同一个模板中使用if语句分隔两个相同的块,该怎么办?这可能吗? – Torostar 2017-01-04 16:27:34

相关问题