Django全局static与templates配置及模板继承详解
本文详解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
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持本站。
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













