Django笔记:模板层(模板配置,加载方式,视图与模板交互,模板标签,模板过滤器,Django中的URL,URL反向解析,静态文件)

本文详细介绍了Django中的模板技术,包括模板配置、加载方式、视图与模板交互、URL设计、静态文件管理和关键模板元素如变量、标签和过滤器。通过实例演示,读者将掌握如何创建和定制模板,实现前后端数据传递和页面结构的灵活布局。
摘要由CSDN通过智能技术生成

一、模板是什么

在这里插入图片描述

二、模板配置

在这里插入图片描述

三、模板的加载方式

1、方式一

在这里插入图片描述

2、方式二(推荐使用)

在这里插入图片描述
使用举例:
在这里插入图片描述

四、视图层和模板层之间的交互

1、使用方法


使用举例
视图函数中
在这里插入图片描述
模板层的html文件
在这里插入图片描述
浏览器显示的结果
在这里插入图片描述

2、能传递到模板中的数据类型

在这里插入图片描述
例如

在视图函数中
在这里插入图片描述
在这里插入图片描述
在模板中
在这里插入图片描述

3、在模板中使用变量

在这里插入图片描述

4、模板标签

(1)、模板标签作用

在这里插入图片描述

(2)、if标签

在这里插入图片描述
在这里插入图片描述
使用举例
在这里插入图片描述

(3)、for标签

在这里插入图片描述
在这里插入图片描述

5、模板过滤器

在这里插入图片描述
在这里插入图片描述
使用示例
在这里插入图片描述

6、模板的继承

在这里插入图片描述
在这里插入图片描述
使用
父模板(base)代码如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
	<!-- 将可变的内容用block 进行包裹,命名为mytitle -->
    {% block mytitle %}
    <title>主页</title>
    {% endblock %}
</head>

<body>
<a href="/music_index">音乐频道</a>
<a href="/sport_index">体育频道</a>
<br>

<!-- 将可变的内容用block 进行包裹,命名为info -->
{% block info %}
    这是主页
{% endblock %}
<br>

<h3>有任何问题,联系XXXXX</h3>
</body>
</html>

子模板(music)代码:

<!-- 采用模板继承 -->
{% extends "base.html" %}

<!-- 重写 -->
{% block mytitle %}
    <title>音乐频道</title>
{% endblock %}

<!-- 重写 -->
{% block info%}
    欢迎来到音乐频道
{% endblock %}

子模板(sport)代码:

{% extends "base.html" %}

{% block mytitle %}
    <title>体育频道</title>
{% endblock %}

{% block info%}
    欢迎来到体育频道
{% endblock %}

上述代码显示内容如下所示
在这里插入图片描述

五、Django中的URL

1、代码中URL出现的位置

在这里插入图片描述

2、代码中URL写法(推荐相对地址中的第一种写法)

在这里插入图片描述
在这里插入图片描述

3、URL反向解析(推荐使用)

在这里插入图片描述
在模板中使用
在这里插入图片描述
使用举例

  1. 路由配置
 # 使用url反向解析,为该url设定名称为:str
    path("test_url2",views.test_url2,name = 'str')
  1. 模板中
<!--使用url反向解析-->
<a href="{% url "str" %}">url反向解析版本</a>

在视图中使用
在这里插入图片描述
使用举例
视图函数中
在这里插入图片描述
路由配置中
在这里插入图片描述

六、Django中的静态文件

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
方案1
setting.py文件中
在这里插入图片描述
html文件中:
在这里插入图片描述
方案二
setting.py文件中
在这里插入图片描述

html文件中
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值