Django全局static与templates配置及模板继承详解

听雨眠
听雨眠
发布时间:2026-10-13 | 5人浏览过
原创

本文详解Django项目中全局static和templates的配置方法。通过修改setting文件指定路径,实现代码复用与管理便利。重点讲解模板继承{% extends %}与{% block %}的使用,以及static标签调用静态资源的规范,附带HTML代码示例与常见问题排查建议。

Django全局static与templates配置及模板继承详解

一、问题

在构建Django框架时,通常需要设立全局变量,旨在实现代码复用并便于统一管理。具体结构可参考下图所示的目录样式。

Django全局static与templates配置及模板继承详解

二、解决

Django全局static与templates配置及模板继承详解

1、修改setting里面的配置文件

①templates的路径:

按照以下规则添加【app/templates】,随后在APP目录下建立该templates文件夹。

APP下的目录结构如下:

②static的路径:

在配置文件的末尾添加相应内容,同时保留原有的static路径设置。

Django全局static与templates配置及模板继承详解

2、在html中引用:

①templates:

在主templates目录下创建一个主HTML文件。

其中block代表区域,即后续整个主体的部分,这相当于将一个body嵌入到该HTML中。

主界面的代码如下:


<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Main</title>
</head>
<body>
{% block title %}{% endblock %}
<a href="https://www.baidu.com/" rel="external nofollow" ><h3>百度一下</h3></a>
</body>
</html>

应用界面的代码:

其中{% extends 'main.html' %}是最为重要的,必须顶头写不然会出错{% block title %}(title只是一个标识,可以使用任意的字符,只要能保持一致就可以检索到)和{% endblock %}相对相应也就是嵌套的区域

代码如下:


{% extends "main.html" %}
{% block title %}
{% load staticfiles %}
</head>

<body>
<img src="{% static 'images\pk_1.jpg' %}" height="500" width="500">
<p>
  我是不是你最疼爱的人,你为什么不说话,我在这等着你回来等着你回来,一朵花儿开就是一朵花儿,满山的花儿在这里开啊!
</p>
<img src="{% static 'images\pk_1.jpg' %}" height="500" width="500">
<br>
<a href="{% url 'index:show' %}" rel="external nofollow" ><h3>Show页面</h3></a>
<br>
<a href="{% url 'index:seconds' %}" rel="external nofollow" ><h3>Seconds页面</h3></a>
<br>
<video src="{% static 'videos\first.m4a' %}" width="400" controls loop></video>
</body>.
{% endblock %}

结果图:

Django全局static与templates配置及模板继承详解

②static:

static比较简单

在调用之前使用{% load staticfiles %}就可以完成调用,使用的时候使用{% static ‘[js/css/pic/video/等路径]' %}就可以完成使用

如上图

Django全局static与templates配置及模板继承详解

三、成果展示

四、总结

Django开发的templates有很多技巧可以多参考一下前人写的,如果出现templates无法加载的情况,检出路径是否出现错误,以及拼写是否有误。

五、参考

附上Django的使用手册:

https://docs.djangoproject.com/en/2.1/ref/settings/#databases

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持本站。

相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表