django_模板层的变量和标签
一、模板层的变量
1、能传递到模板层的数据类型:str(字符串)、list(数组)、dict(字典)、obj(类实例化的对象)、fun(函数)等。
2、在模板中使用变量的方法:
(1)字符串:{{ 变量名 }}
(2)数组:{{ 变量名.index }}
(3)字典:{{ 变量名.key }}
(4)对象:{{ 对象.方法 }}
(5)函数:{{ 函数名 }}
二、模板层的标签
1、标签的作用:将一些服务器端的功能嵌入到模板中,例如流程控制(IF、FOR等)等。语法如下:

2、if标签

if标签的注意事项:(1)if条件表达式里可以用的运算符==,!=,<>,<=,>=,in,not in,is,is not,not,and,or;(2)在if标记中使用括号是无效的语法。如果需要指示优先级,则应使用嵌套的if标记。
3、if标签测试
(1)视图文件view文件中新建视图函数。

(2)添加html文件

(3)添加路由

(4)测试

4、if标签练习
(1)任务:完成下图所以的计算器,要求:每点击完“开始计算”之后,页面保留用户提交的值和选择的操作(加减乘除)

分析:这个属于典型的既有get请求又有post请求。当get请求进来是,将展示计算器页面;提交数据进行后端计算,则属于post请求。
(2)view函数中的代码
在view中建立如下视图函数。当用户进入此路由时,即为get请求,get请求就将对应的html静态页面返回。当用户填写完计算值,并点击提交之后,获取模板中上送的值,并进行计算,再将计算结果返回给模板。(小技巧:使用locals可以自动将当前函数中的变量拼接成字典)

(3)html代码

(4)配置路由

(5)测试效果

4、for标签
(1)语法如下:

for标签的内置变量

(2)for循环测试
新建view函数

配置html

配置路由并测试结果

三、总结
1、可以将不同数据类型的变量从view层传递到模板层
2、在模板层调用变量的方法为{%标签%}{%结束标签%}
3、模板层支持if和for循环。
django_模板层的变量和标签的更多相关文章
- Django框架(七)—— 模板层:变量、过滤器、标签、自定义标签和过滤器
目录 模板层:变量.过滤器.标签.自定义标签和过滤器 一.模板层变量 1.语法 2.使用 二.模板层之过滤器 1.语法 2.常用过滤器 3.其他过滤器 三.模板值标签 1.for标签 2.if标签 3 ...
- Django框架(六)--模板层:变量、过滤器、标签、自定义标签和过滤器
将页面的设计和Python的代码分离开会更干净简洁更容易维护. 我们可以使用 Django的 模板系统 (Template System)来实现这种模式 # django模板修改的视图函数 def c ...
- Django框架之第五篇(模板层) --变量、过滤器、标签、自定义标签、过滤器,模板的继承、模板的注入、静态文件
模板层 模板层就是html页面,Django系统中的(template) 一.视图层给模板传值的两种方法 方式一:通过键值对的形式传参,指名道姓的传参 n = 'xxx'f = 'yyy'return ...
- Django之模板层-自定义过滤器以及标签
自定义标签与过滤器 在settings中的INSTALLED_APPS配置当前app,不然django无法找到自定义的simple_tag. 在app中创建templatetags模块(模块名只能是t ...
- Django模板层学习笔记
一. 前言 Django模板层的知识包括标签.过滤器.自定义标签.自定义过滤器以及inclusion_tag,最重要的是模板的继承和导入. 首先模板层最重要的是模板语法,之前我们提过涉及到变量用模板语 ...
- $Django 模板层(变量、过滤器 、标签)、自定义(模板过滤器,标签)
1 模版语法之变量:详见源码 -{{ 变量 }}:******重要******{#相当于print了该变量#} {#只写函数名 相当于()执行了#}<p>函数:{{ test }}< ...
- Web框架之Django_04 模板层了解(过滤器、标签、自定义过滤器、标签、inclusion_tag、模板的继承与导入)
摘要: 模版层(模板语法) 模板语法 过滤器 标签 自定义过滤器.标签 inclusion_tag 模板的继承 模板的导入 一.模板语法: 常用语法:{{ }} 变量相关{% %} ...
- 模板层语法、模板层之标签、模板的继承与导入、模型层之ORM常见关键字
模板层语法.模板层之标签.模板的继承与导入.模型层之ORM常见关键字 一.模板层语法 1.模板语法的传值 urls代码: path('modal/', views.modal) views代码: de ...
- 12月14日内容总结——模板层之标签、自定义模板语法、母版(模版)的继承与导入、模型层前期准备知识点、ORM常用关键字
目录 一.模板层之标签 分支结构if for循环 with(定义变量名) 二.自定义过滤器.标签及inclusion_tag(了解) 三.母版(模板)的继承与导入(重要) 四.模型层之前期准备 模型层 ...
- Django——模板层(template)(模板语法、自定义模板过滤器及标签、模板继承)
前言:当我们想在页面上给客户端返回一个当前时间,一些初学者可能会很自然的想到用占位符,字符串拼接来达到我们想要的效果,但是这样做会有一个问题,HTML被直接硬编码在 Python代码之中. 1 2 3 ...
随机推荐
- 永久免费泛域名证书: letsencrypt
项目地址: https://github.com/Neilpang/acme.sh
- PyTables学习 (数据保存形式,对象树结构)
参考自http://www.pytables.org/usersguide/introduction.html PyTables的主要目的是提供一个好的操作HDF5文件的方法. HDF文件是分层数据格 ...
- 阻止form表单默认跳转
form表单提交后,会默认跳转
- tsc条码打印机如何导入表格批量打印
很多时候,我们在TSC条码打印机的权昌条码打印软件里做标签时,涉及数据特别大,都保存在EXCLE表格里,那要怎么做,才可以使软件批量打印EXCEL数据呢?下面,小编就教教大家一种简单的批量打印标签的方 ...
- js时间戳转换
第一个参数传时间戳,第二个连接符可以看你的心情,我喜欢'-' formatDate(value, spe = '/') { value = value * 1000 //10位数时间戳要乘1000 1 ...
- CF1786E题解
容易为本题的弱化版CF1786C想出一个贪心: #include<bits/stdc++.h> using namespace std; #define int long long int ...
- 项目启动报错:关于modals以及node版本相关
programme1: 1.代码用master分支的. 2. 删除node_module , yarn lock 文件,package-lock文件. 3. 用 npm install 或者 yar ...
- Mac Google浏览器 Chrome
Mac Google浏览器 Chrome https://590m.com/f/28636472-500465601-d4c369 (访问密码:7410)
- PHP连接FTP服务器获取文件
运行结果:
- uniapp滚动组件scroll-view
//scroll-x="true" || scroll-y="true" <view class="scroll-view"> ...