2011-12-31 10 views
8

Questo è il mio base.htmldjango modello non si estende a lavorare

<!DOCTYPE html> 
<head> 
<title> My Site </title> 
</head> 
<body> 
<div id="wrapper"> 
<!-- HEADER START --> 
{% block nav %} {% endblock %} 
{% block index %} {% endblock %} 
</div> 
</body> 
</html> 

questo è il mio nav.html

{% extends "base.html" %} 
{% block nav %} 
<div id="header"> 
<div class="inner"> 

<div class="nav"> 
<ul> 
<li class="current"><a href="index.html">Home</a></li> 
<li><a href="about.html">About</a></li> 
<li><a href="blog_right.html">Blog</a></li>       
<li><a href="contact.html">Contact</a></li> 
</ul>      
</div> 
<div class="clear"></div>   
</div><!-- .inner end --> 
</div><!-- #header end --> 
<!-- HEADER END --> 
{% endblock %} 

questo è il mio index.html

{% extends "base.html" %} 
{% block index %} 
<p> hello </p> 
{% endblock %} 

ho fatto più volte prima di prima, ma io sono senza tracce sul perché questo NON funziona? gli URL e le vedute sono here.

+2

Qual è il problema? "Non funziona" non è molto utile. –

risposta

10

Bene tutto va bene, il problema che si stanno avendo è che siete confusi, basta nominare un blocco nella base non si chiama. Contrassegna la differenza tra estensione e inclusione. Hai estinto il counfused per includere.

Una volta nelle visualizzazioni se si chiama say index.html verrà reso correttamente. L'effetto desiderato può essere ottenuto cambiando il file base.html in index.html.

Spero che questo aiuti. più può essere letto qui: https://docs.djangoproject.com/en/dev/topics/templates/#template-inheritance

+0

grazie, ha aiutato seriamente. e sì mi ricorderò che ... sciocco me :( – user993563

1

Per più persone che finiscono qui (come me stesso), la cosa principale da notare è che quando si utilizza {% extends 'something.html' %}, non è possibile utilizzare altro che questi tag modello al primo livello.

Puoi ovviamente avere tag html all'interno di questi tag (come i tag di blocco), ma non mettere NULLA al di fuori dei tag del modello.

Problemi correlati