Ich lese die definitive Anleitung zu Django und bin in Kapitel 4 auf Vorlage Vererbung. Es scheint, dass ich nicht etwas so Elegantes mache, wie es möglich sein sollte, da ich etwas Code kopieren muss, damit der Kontext beim Aufruf der Kindansicht erscheint. Hier ist der Code in views.py:Django Vorlage Vererbung und Kontext
def homepage(request):
current_date = datetime.datetime.now()
current_section = 'Temporary Home Page'
return render_to_response("base.html", locals())
def contact(request):
current_date = datetime.datetime.now()
current_section = 'Contact page'
return render_to_response("contact.html", locals())
Es scheint redundant zu sein, die current_date Zeile in jeder Funktion enthalten. Hier
ist die Basis-HTML-Datei, die Anrufe Startseite:
<html lang= "en">
<head>
<title>{% block title %}Home Page{% endblock %}</title>
</head>
<body>
<h1>The Site</h1>
{% block content %}
<p> The Current section is {{ current_section }}.</p>
{% endblock %}
{% block footer %}
<p>The current time is {{ current_date }}</p>
{% endblock %}
</body>
</html>
und ein Kind Template-Datei:
{% extends "base.html" %}
{% block title %}Contact{% endblock %}
{% block content %}
<p>Contact information goes here...</p>
<p>You are in the section {{ current_section }}</p>
{% endblock %}
Wenn ich beinhalten nicht die current_date Linie, wenn das Kind Aufruf der Datei, wo Diese Variable sollte leer sein.