Django——模板
Django——模板
Django 提供一种动态生成 HTML 页面 —— 模板
1、模板语言
模板语言(DTL): 变量 , 注释 , 标签 , 过滤器 , 模板继承
1、变量
<body>
<!-- 这个是前端中的注释 -->
{# 这种是Django中模板语言的注释 #}
<div style="color: red"><p>变量</p><p>姓名:{{ name }}</p><p>年龄:{{ age }}</p><p>性别:{{ gender }}</p>
</div>
<div style="color: blue"><p>调用函数</p><p>{{ demo }}</p><p>调用类</p><p>{{ Demo.name }}</p><p>{{ Demo.eat }}</p><p>调用对象</p><p>{{ ek.name }}</p><p>{{ ek.eat }}</p>
</div>
<div><p>列表</p><p>{{ ll }}</p><p>通过下标获取列表中的数据</p><p>{{ ll.1 }}</p>
</div>
</body>
def template_view(request):name = '阿宸'age = 17gender = '男'# 可以将函数,类传递到 html 模板中def demo():return '你好呀'class Demo:def __init__(self):self.name = '尔康'def eat(self):return "等下一起去吃KFC"ek = Demo()ll = ['叶晓春','樱岛麻衣','境界']return render(request , 'template_demo.html' , locals())
2、过滤器
过滤器的格式:{{ 变量名|过滤器名称:数据}}
<body>
<div style="color: red"><p>default 过滤器</p><p>当变量为空或者为 False 的时候响应为设置的默认值</p>{{ sex | default:'靓仔' }}<br>{{ age | default:'18' }}
</div>
<div style="color: green"><p>length 过滤器</p><p>返回变量的长度</p>{{ name | length }}<br>{{ ll | length }}
</div>
<div style="color: black"><p>safe 过滤器</p><p>可以将带有 html 标签的字符串进行格式转换 </p>{{ name | safe }}<br>{{ html_str }}{{ html_str | safe }}
</div>
<div style="color: #096"><p>rendom 过滤器</p><p>在指定的列表中随机获取一个数据</p>{{ ll | random }}
</div>
</body>
自定义过滤器
在应用下创建 templatetags 包 , 在这个包内创建一个 py 文件
from django import templateregister = template.Library()# 自定义过滤器
# name 是定义过滤器名称的
@register.filter(name='max_number')
def num(num_1 , num_2):return max(num_1 , num_2)
<div style="color: #096"><p>自定义过滤器</p>{# 导入自定义过滤器的模块 #}{% load mytag %}{{ age | max_number:27 }}
</div>
3、流程控制
if 判断
{% if 判断条件 %}
……
{% elif 判断条件 %}
……
{% else %}
……
{% endif %}
for 循环
{% for 变量名 in 可迭代对象 %}
……
{% endfor %}
<p>if 判断</p>
{% if age > 18 %}<div style="color: red">{{ name }}</div>
{% else %}<div style="color: pink">{{ gender }}</div>
{% endif %}
<div><p>for 循环</p>{% for i in ll %}{# forloop 循环信息 #}
{# {{ forloop }}#}<li>{{ forloop.counter0 }}:{{ i }}</li>{% endfor %}
</div>
4、include 标签
include 标签用户模板的包含
<div style="color: blue"><p>模板A</p><p>作者:{{ name }}</p><p>籍贯:{{ add }}</p><p>联系地址:{{ tel_addr }}</p>
</div>
<div>{# {% include 'include_demo.html' %} #}{# {% include 'include_demo.html' with 导入模板参数 %} #}{% include 'include_demo.html' with name='ac' add='广东' tel_addr='广州天河花城大道'%}
</div>
5、自定义 inclusion_tag
制作局部的 html 标签
局部标签中的内容需要通过模板引擎来制作
# 自定义 inclusion_tag
# inclusion_tag 制定局部标签在哪一个文件中
@register.inclusion_tag('tag.html')
def tag_demo():ls = ['?:','境界','樱岛麻衣','。。','叶晓春']return locals()
<ul>{% for l in ls %}<li>{{ l }}</li>{% endfor %}
</ul>
<div>{% load mytag %}{# 使用自定义的局部标签 , 标签的名称就是自定义标签的函数名 #}{% tag_demo %}
</div>
6、模板继承
子模板继承语法: {% extends '父模板文件名' %}
重写模板:{% block 名称 %}{% endblock 名称 %}
被这个标签包含的 , 子模板可以重写
<body>
<div><p>阿宸好帅</p>
</div>{% block content %}
<div><p>等下那个一起去吃KFC</p><p>尔康、樱岛麻衣</p>
</div>
{% endblock content %}<div>
{% block neiron %}
{% endblock neiron %}
</div></body>
{# 继承模板页面 #}
{% extends 'f_extend.html' %}{# 重写父模板中的内容 #}
{% block content %}
<div><p>樱岛麻衣:我还有倒三角</p>
</div>
{% endblock content %}{% block neiron %}<p>境界:看回放辣眼睛</p>
{% endblock %}
相关文章:
Django——模板
Django——模板 Django 提供一种动态生成 HTML 页面 —— 模板 1、模板语言 模板语言(DTL): 变量 , 注释 , 标签 , 过滤器 , 模板继承 1、变量 <body> <!-- 这个是前端中的注释 --> {# 这种是Django中模板语言的…...

角蜥优化算法 (Horned Lizard Optimization Algorithm ,HLOA)求解无人机路径优化
一、无人机路径规划模型介绍 无人机三维路径规划是指在三维空间中为无人机规划一条合理的飞行路径,使其能够安全、高效地完成任务。路径规划是无人机自主飞行的关键技术之一,它可以通过算法和模型来确定无人机的航迹,以避开障碍物、优化飞行时间和节省能量消耗。 二、算法介…...

Windows下 OracleXE_21 数据库的下载与安装
Oracle 数据库的下载与安装 数据库安装包下载数据库安装访问数据库进行测试Navicat连接数据库 1. 数据库安装包的下载 1.1 下载地址 Oracle Database Express Edition | Oracle 中国 1.2 点击“下载 Oracle Database XE”按钮,进去到下载页面(选择对…...

新手如何快速上手学习单片机?
读者朋友能容我,不使博文负真心 新开专栏,期待与诸君共享精彩 个人主页:17_Kevin-CSDN博客 专栏:《单片机》 学习单片机是一个有趣且有挑战性的过程。单片机是一种微控制器,广泛应用于各种电子设备和嵌入式系统中。在这…...
grpc的验证器
简介 在使用grpc库时候 ,很多时候我们需要对反序列化的参数进行校验,代码中有很多参数校验的代码,如果手动实现,会非常繁琐,对于grpc来说,在定义proto的时候使用直接定义参数的限制规则是一种更合理、更优雅的方式,插…...

无法找到concrt140.dll怎么办?concrt140.dll丢失的5种解决方法
在我们使用计算机的时候,偶尔会遭遇一些技术问题,其中一个比较常见的问题就是出现了"丢失concrt140.dll文件"的提示。当我们的电脑告诉我们缺少了concrt140.dll文件时,常常是因为某些程序无法找到这个文件而导致了程序的运行异常。…...

Elasticsearch 分享
一、Elasticsearch 基础介绍 ElasticSearch 是分布式实时搜索、实时分析、实时存储引擎,简称(ES), 成立于2012年,是一家来自荷兰的、开源的大数据搜索、分析服务提供商,为企业提供实时搜索、数据分析服务,…...
cpu masks的初始化
在内核中,有几个位图变量是用作标识cpu数量和状态的,它们分别是: 变量名称用途循环所使用的宏cpu_possible_mask系统中有多少个可以运行的cpu核for_each_possible_cpucpu_present_mask系统中有多少个可处于运行状态的cpu核for_each_present_…...

【软件测试面试】银行项目测试面试题+答案(二)
目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 面试题࿱…...

视频极速切割无损工具免费版,亲测好用!
问题描述 最近想兼职做自媒体,最初想法是想把视频资源下载到本地,本地做一些剪辑和图文配音发布到自媒体app上,但是要把视频(腾讯视频qlv转mp4看我上一篇文章,也是免费版)切割成一小段的片段用手机剪太费劲了,网上好多…...
LightDB ecpg 支持 exec sql execute ... end-exec【24.1】【oracle 兼容】
LightDB 从24.1 版本开始支持 oracle pro*c 中执行匿名块的语法(之前可以通过do 语句执行匿名块): EXEC SQL EXECUTEanonymous block END-EXEC;因为匿名块不是SQL标准的一部分,所以此用法也不存在于SQL标准中。 示例 #include …...

菜品检测,基于YOLOV8
菜品检测,基于YOLOV8NANO,训练得到模型PT,然后转换成ONNX,OPENCV的DNN调用,支持C/PYTHON/ANDROID开发菜品检测,基于YOLOV8,能检测五种菜品,水豆腐、豆腐干、空心菜、豆芽菜、茄子...
前端面试练习24.3.5
webpack相关 项目使用webpack流程 进入一个初始化好的vue项目下载安装webpack相关依赖包/插件 npm install --save-dev webpack webpack-cli webpack-dev-server安装一些相关的loader,比如vue-loader,babel-loader,css-loader等创建webpack.config.js文…...
vim 编辑器
vim 编辑器是什么用途? vim 是一种强大而灵活的文本编辑器,广泛用于开发和系统管理任务。它可以在命令行界面中使用,并提供许多高级编辑功能和快捷键,使用户能够高效地编辑文本文件。 vim 编辑器适用于哪些语言? vim 编…...
docker安装MongoDB脚本
使用docker安装MongoDB只需要按以下步骤执行即可: 一、docker 运行 注意修改默认端口,防止被攻击: docker run -d --name mongo --restartalways -p 25066:28317 -v /usr/local/mongDb/configdb:/data/configdb -v /usr/local/mongDb/db:…...

资料下载-嵌入式 Linux 入门
学习的第一步是去下载资料。 1. 有哪些资料 所有资料分 4 类: ① 开发板配套资料(原理图、虚拟机的映像文件、烧写工具等),放在百度网盘 ② 录制视频过程中编写的文档、源码、图片,放在 GIT 仓库 ③ u-boot、linux 内核、buildroot 等比较大…...

错误票据 刷题笔记
开数组 读入数据 记录最小值和最大值 每次读入x; 让a[x]; 从最小值开始 向上扫 当扫到a[x]0时候为断号 扫到a[x]>1为重号; 该题的小技巧 未知长度的数据的读入方式 1.首先在头文件敲上 #include<sstream> #include<string> #include<…...

十堰网站建设公司华想科技具有10年的网站制作经验
2018年已经结束了。 华翔科技收到了很多客户的咨询,他们都有一个共同的问题:建一个网站需要多少钱? 但是,我们都会问:您有什么具体需求吗? 大多数人的答案是否定的,他们只是想打听一下价格。 十…...

站库分离技术--反向代理技术-雷池云WAF-给自己搭建一个安全点的网站
文章目录 概要整体架构流程技术名词解释技术细节ssh-ubuntu服务器docker-映射-链接-通信nginx反代mysql设置数据库新密码 小结我的mysql映射目录我的wordpress映射目录 成果展示 概要 新买了一个云服务器,想搭建一个站库分离的wordpress为主的网站,采用d…...

MySQL常见的索引类型介绍
我将为您详细讲解 MySQL 中常见的索引类型,以及它们的使用场景、特点、区别和优势。索引是提高数据库查询性能的关键工具,它可以加速数据检索速度,减少服务器的负担。在 MySQL 中,索引类型主要包括 B-Tree 索引、哈希索引、全文索…...
什么是EULA和DPA
文章目录 EULA(End User License Agreement)DPA(Data Protection Agreement)一、定义与背景二、核心内容三、法律效力与责任四、实际应用与意义 EULA(End User License Agreement) 定义: EULA即…...
【C语言练习】080. 使用C语言实现简单的数据库操作
080. 使用C语言实现简单的数据库操作 080. 使用C语言实现简单的数据库操作使用原生APIODBC接口第三方库ORM框架文件模拟1. 安装SQLite2. 示例代码:使用SQLite创建数据库、表和插入数据3. 编译和运行4. 示例运行输出:5. 注意事项6. 总结080. 使用C语言实现简单的数据库操作 在…...
React---day11
14.4 react-redux第三方库 提供connect、thunk之类的函数 以获取一个banner数据为例子 store: 我们在使用异步的时候理应是要使用中间件的,但是configureStore 已经自动集成了 redux-thunk,注意action里面要返回函数 import { configureS…...

【分享】推荐一些办公小工具
1、PDF 在线转换 https://smallpdf.com/cn/pdf-tools 推荐理由:大部分的转换软件需要收费,要么功能不齐全,而开会员又用不了几次浪费钱,借用别人的又不安全。 这个网站它不需要登录或下载安装。而且提供的免费功能就能满足日常…...

莫兰迪高级灰总结计划简约商务通用PPT模版
莫兰迪高级灰总结计划简约商务通用PPT模版,莫兰迪调色板清新简约工作汇报PPT模版,莫兰迪时尚风极简设计PPT模版,大学生毕业论文答辩PPT模版,莫兰迪配色总结计划简约商务通用PPT模版,莫兰迪商务汇报PPT模版,…...

论文阅读:Matting by Generation
今天介绍一篇关于 matting 抠图的文章,抠图也算是计算机视觉里面非常经典的一个任务了。从早期的经典算法到如今的深度学习算法,已经有很多的工作和这个任务相关。这两年 diffusion 模型很火,大家又开始用 diffusion 模型做各种 CV 任务了&am…...

热门Chrome扩展程序存在明文传输风险,用户隐私安全受威胁
赛门铁克威胁猎手团队最新报告披露,数款拥有数百万活跃用户的Chrome扩展程序正在通过未加密的HTTP连接静默泄露用户敏感数据,严重威胁用户隐私安全。 知名扩展程序存在明文传输风险 尽管宣称提供安全浏览、数据分析或便捷界面等功能,但SEMR…...

客户案例 | 短视频点播企业海外视频加速与成本优化:MediaPackage+Cloudfront 技术重构实践
01技术背景与业务挑战 某短视频点播企业深耕国内用户市场,但其后台应用系统部署于东南亚印尼 IDC 机房。 随着业务规模扩大,传统架构已较难满足当前企业发展的需求,企业面临着三重挑战: ① 业务:国内用户访问海外服…...

Win系统权限提升篇UAC绕过DLL劫持未引号路径可控服务全检项目
应用场景: 1、常规某个机器被钓鱼后门攻击后,我们需要做更高权限操作或权限维持等。 2、内网域中某个机器被钓鱼后门攻击后,我们需要对后续内网域做安全测试。 #Win10&11-BypassUAC自动提权-MSF&UACME 为了远程执行目标的exe或者b…...

云原生时代的系统设计:架构转型的战略支点
📝个人主页🌹:一ge科研小菜鸡-CSDN博客 🌹🌹期待您的关注 🌹🌹 一、云原生的崛起:技术趋势与现实需求的交汇 随着企业业务的互联网化、全球化、智能化持续加深,传统的 I…...