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

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

本文详解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 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。