Wenn ich {% extends "X.html" %}
zu meinen untergeordneten Vorlagen hinzufügen (die übergeordnete "base.html"), wird nur die übergeordnete Vorlage geladen. Wenn ich es wegnehme, wird die Kindvorlage geladen. Ich habe eine andere App, wo ich eine scheinbar identische Vererbungsstruktur habe, also bin ich ratlos. Hier ist "base.html":erweitert nicht funktioniert in Django 1.9
<!DOCTYPE html>
{% load staticfiles %}
<html>
<head>
{% block js %}
<script src="{{ STATIC_URL }}js/jquery.1.12.4.min.js"></script>
<script src="{{ STATIC_URL }}js/p5.js"
{% endblock %}
<title>myapp</title>
</head>
<body>
<h1>Welcome to my app</h1>
</body>
</html>
Hier ist "grow.html"
<!DOCTYPE html>
{% extends "app/base.html" %}
{% block js %}
<script src="{{ STATIC_URL }}js/grow.js"></script>
{% endblock %}
{% block content %}
<body>
<div id="message" style="visibility: hidden;"></div>
<div id="tree"></div>
<a href="/register/">register</a>
<form method="POST">
{% csrf_token %}
<input type="text" id="txt" />
<input type="submit" id="grow" value="grow" style="color: grey;"/>
</form>
</body>
{% endblock %}
ich auf jeden Fall das Kind Schablone in meinem views.py nenne, das ist also nicht das Problem:
def grow(request):
...
return render(request, 'app/grow.html')
Hier sind mein Projekt Urls:
von django.conf.urls Import enthalten, url von django.contr ib Import Admin von App Import Ansichten
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^grow/', include('app.urls')),
url(r'^$', views.home, name="home"),
]
und App-URL:
from django.conf.urls import url
from app import views
urlpatterns = [
url(r'^$', views.grow, name='grow'),
]
Wenn ich auf die URL gehen/wachsen/Ich erwarte "grow.html" zu sehen, aber ich sehe " base.html ".
Sie müssen '{% block content%} {% endblock%}' in base.html einfügen – trantu