我尝试使用 extends 标签
来简化我的 HTML 文件
,主要是不多次编写相同的内容。
所以我创建了一个 Base.html
文件和 Home.html
,它们位于:
Etat_civil
|__Home
|__templates
|__Home.html
|__BirthCertificate
|__Identity
|__templates
|__Base.html
这是我的Base.html 文件:
<!--DOCTYPE html -->
<html>
<head>
{% load staticfiles %}
<title> DatasystemsEC - Accueil </title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="stylesheet" type="text/css" href="{% static 'css/Base.css' %}"/>
</head>
<!-- #################### -->
<!-- Upper navigation bar -->
<!-- #################### -->
<nav class="navbar navbar-inverse">
<div class="container-fluid">
<div class="navbar-header">
<a class="navbar-brand" href="http://www.datasystems.fr/"> DatasystemsEC </a>
</div>
<!-- Home tab -->
<ul class="nav navbar-nav">
<li><a href="{% url "accueil" %}"> <span class="glyphicon glyphicon-home"></span> Accueil </a></li>
<!-- Individual form tab -->
<li class = "dropdown">
<a href = "accueil" class = "dropdown-toggle" data-toggle = "dropdown">
<span class="glyphicon glyphicon-baby-formula"></span> Fiches Individuelles
<b class = "caret"></b>
</a>
<ul class = "dropdown-menu">
<li><a href = "{% url "home" %}"> Accueil des fiches individuelles </a></li>
<li><a href = "{% url "form" %}"> Création des fiches individuelles </a></li>
<li><a href = "{% url "searched" %}"> Consultation des fiches individuelles </a></li>
<li><a href = "{% url "edited" %}"> Edition des fiches individuelles </a></li>
<li><a href = "{% url "deleted" %}"> Suppression des fiches individuelles </a></li>
</ul>
</li>
<!-- Birth form tab -->
<li class = "dropdown">
<a href = "accueil" class = "dropdown-toggle" data-toggle = "dropdown">
<span class="glyphicon glyphicon-baby-formula"></span> Actes de Naissance
<b class = "caret"></b>
</a>
<ul class = "dropdown-menu">
<li><a href = "{% url "BChome" %}"> Accueil des actes de naissance </a></li>
<li><a href = "{% url "BCform" %}"> Création d'un acte de naissance </a></li>
<li><a href = "{% url "BCnotfound" %}"> Consultation d'un acte de naissance </a></li>
<li><a href = "{% url "BCnotfound" %}"> Edition d'un acte de naissance </a></li>
</ul>
</li>
<!-- Wedding form tab -->
<li class = "dropdown">
<a href = "accueil" class = "dropdown-toggle" data-toggle = "dropdown">
<span class="glyphicon glyphicon-heart"></span> Actes de Mariage
<b class = "caret"></b>
</a>
<ul class = "dropdown-menu">
<li><a href = "{% url "BCnotfound" %}"> Accueil des actes de mariage </a></li>
<li><a href = "{% url "BCnotfound" %}"> Création des actes de mariage </a></li>
<li><a href = "{% url "BCnotfound" %}"> Consultation des actes de mariage </a></li>
<li><a href = "{% url "BCnotfound" %}"> Edition des actes de mariage </a></li>
</ul>
</li>
<!-- Divorce form tab -->
<li class = "dropdown">
<a href = "accueil" class = "dropdown-toggle" data-toggle = "dropdown">
<span class="glyphicon glyphicon-fire"></span> Actes de Divorce
<b class = "caret"></b>
</a>
<ul class = "dropdown-menu">
<li><a href = "{% url "BCnotfound" %}"> Accueil des actes de divorce </a></li>
<li><a href = "{% url "BCnotfound" %}"> Création des actes de divorce </a></li>
<li><a href = "{% url "BCnotfound" %}"> Consultation des actes de divorce </a></li>
<li><a href = "{% url "BCnotfound" %}"> Edition des actes de divorce </a></li>
</ul>
</li>
<!-- Death form tab -->
<li class = "dropdown">
<a href = "accueil" class = "dropdown-toggle" data-toggle = "dropdown">
<span class="glyphicon glyphicon-alert"></span> Actes de Décès
<b class = "caret"></b>
</a>
<ul class = "dropdown-menu">
<li><a href = "{% url "BCnotfound" %}"> Accueil des actes de décès </a></li>
<li><a href = "{% url "BCnotfound" %}"> Création des actes de décès </a></li>
<li><a href = "{% url "BCnotfound" %}"> Consultation des actes de décès </a></li>
<li><a href = "{% url "BCnotfound" %}"> Edition des actes de décès </a></li>
</ul>
</li>
</ul>
<!-- Connexion tab -->
<ul class="nav navbar-nav navbar-right">
<li><a href="http://localhost:8000/admin/login/?next=/admin/"><span class="glyphicon glyphicon-log-in"></span> Me Connecter </a></li>
</ul>
</div>
</nav>
</html>
还有我的Home.html文件:
{% extends 'Base.html' %}
{% load staticfiles %}
{% block content %}
<!-- ############### -->
<!-- Page principale -->
<!-- ############### -->
<p align="center"><img src="{% static 'images/logo.png' %}"></p>
<h2 align="center"> <font color="#0083A2"> Bienvenue sur la page d'accueil du logiciel DatasystemsEC </font></align></h2>
{% endblock content %}
我正确地得到了我的base.html,但里面什么也没有出现。我应该会看到带有图片和标题的 Home.html 文件,对吗?
Base.html 覆盖了我的 Home.html 文件?
如果您愿意,我可以粘贴我的 settings.py 文件以便查看模板和静态目录,但我看不到问题所在。
谢谢!
最佳答案
您的 base.html 模板中没有“内容” block ,因此显然您无法在“home.html”中覆盖它。这个想法是使用基本模板来定义公共(public)页面结构,并使用(通常是空的) block 作为“具体”模板将填充的占位符。 IOW:您必须在您希望内容出现的基本模板中添加一个空的“内容” block ;)
关于python - 使用 Django 扩展标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41485539/