Возможно, я неправильно понимаю наследование шаблонов в Django, но почему не работает приведенный ниже код? Оба дочерних шаблона наследуются от родительского шаблона с разными именами блоков.
base. html:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<h1>test</h1>
{% block index %}{% endblock %}
{% block nav %}{% endblock %}
</body>
</html>
index. html
{% extends 'blog/base.html' %}
{% block index %}
<h1>This is the index.html page</h1>
{% endblock %}
навигация. html
{% extends 'blog/base.html' %}
{% block nav %}
<h1>This is the nav.html</h1>
{% endblock %}
Я открываю этот шаблон по: urls.py
urlpatterns = [
path('admin/', admin.site.urls),
path('blog/', include('blog.urls'))
]
blog / urls.py:
urlpatterns = [
path('', views.home, name='home'),
path('nav/', views.home, name='nav')
]
blog / views.py
def home(request):
return render(request, 'blog/index.html')
Использование URL из:
localhost:8000/blog
HTML Вывод:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<h1>test</h1>
<h1>This is the index.html page</h1>
</body>
</html>
Я пытаюсь использовать asp концепцию использования нескольких блоков, чтобы я мог разместите их на нужных мне шаблонах.