django_模板层的过滤器和继承
************************************************************************************************************************************************************************************************************************
-------------------------------------------------------------------------------------------------------==☆==--------------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------元亨利贞--------------------------------------------------------------------------------------------------------------
*************************************************************************************************************************************************************************************************************************
一、模板层的过滤器
1、作用
对于一些相对较简单的逻辑,可以直接在模板层进行处理,而不必经过视图层。

2、常见的过滤器

3、实践
(1)在视图层的变量中,增加过滤器。

(2)视图层传参数

(3)测试结果

二、模板层的继承
1、继承的作用
在进行前端展示的时候,往往需要将特定的前端内容保持不变,而只改变部分内容,例如网站的head和tail,这种展示方式就是继承。如下所示,页眉和页脚的蓝色和紫色都是被继承过来的内容。

2、继承的实现和语法
(1)父模板的语法

(2)子模板的语法

3、实战
(1)任务
设计一个网站前端,包含体育和音乐两个模块,但是网站head保持不变,点击“体育”或“音乐”能分别跳转。
(2)实现
定义父模板。父模板中的titille和内容是block,可以修改,其他内容不可修改。

定义音乐和体育模块的html


视图函数

绑定路由

(3)查看结果
地址栏输入base_view的路由

点击音乐频道

点击体育频道

4、注意事项

(1)例如,这上面的练习中,如果将变量传递给base.html,当页面跳转时候,变量值无法传递至下一个页面。修改base.html和base_view中的内容如下。


(2)实际运行结果如下

但是当点击音乐频道之后,将看不到上一级穿过的值。

三、小结

************************************************************************************************************************************************************************************************************************
-------------------------------------------------------------------------------------------------------==☆==--------------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------元亨利贞--------------------------------------------------------------------------------------------------------------
*************************************************************************************************************************************************************************************************************************
django_模板层的过滤器和继承的更多相关文章
- Django之模板层-自定义过滤器以及标签
自定义标签与过滤器 在settings中的INSTALLED_APPS配置当前app,不然django无法找到自定义的simple_tag. 在app中创建templatetags模块(模块名只能是t ...
- Django框架之第五篇(模板层) --变量、过滤器、标签、自定义标签、过滤器,模板的继承、模板的注入、静态文件
模板层 模板层就是html页面,Django系统中的(template) 一.视图层给模板传值的两种方法 方式一:通过键值对的形式传参,指名道姓的传参 n = 'xxx'f = 'yyy'return ...
- Django框架(六)--模板层:变量、过滤器、标签、自定义标签和过滤器
将页面的设计和Python的代码分离开会更干净简洁更容易维护. 我们可以使用 Django的 模板系统 (Template System)来实现这种模式 # django模板修改的视图函数 def c ...
- Django框架(七)—— 模板层:变量、过滤器、标签、自定义标签和过滤器
目录 模板层:变量.过滤器.标签.自定义标签和过滤器 一.模板层变量 1.语法 2.使用 二.模板层之过滤器 1.语法 2.常用过滤器 3.其他过滤器 三.模板值标签 1.for标签 2.if标签 3 ...
- 模板层之标签 自定义过滤器及标签 模板的继承与导入 模型层之前期准备 ORM常用关键字
目录 模板层之标签 if判断 for循环 自定义过滤器.标签及inclusion_tag(了解) 前期三步骤 自定义过滤器(最大只能接收两个参数) 自定义标签(参数没有限制) 自定义inclusion ...
- python之路49 模板层标签 自定义过滤器 模板继承、模型层准备、ORM部分操作
模板层之标签 {% if 条件1(可以自己写也可以是用传递过来的数据) %} <p>周三了 周三了</p> {% elif 条件2(可以自己写也可以用传递过来的数据) %} & ...
- 模板层之标签、自定义模板语法、母版(模版)的继承与导入、模型层前期准备知识点、ORM常用关键字
今日内容概要 模板层之标签 if判断 {% if 条件1 %} #条件1成立 <p>Hello!</p> #执行 {% elif 条件2 %} #条件1不成立 条件2成立 &l ...
- 模板层语法、模板层之标签、模板的继承与导入、模型层之ORM常见关键字
模板层语法.模板层之标签.模板的继承与导入.模型层之ORM常见关键字 一.模板层语法 1.模板语法的传值 urls代码: path('modal/', views.modal) views代码: de ...
- 12月14日内容总结——模板层之标签、自定义模板语法、母版(模版)的继承与导入、模型层前期准备知识点、ORM常用关键字
目录 一.模板层之标签 分支结构if for循环 with(定义变量名) 二.自定义过滤器.标签及inclusion_tag(了解) 三.母版(模板)的继承与导入(重要) 四.模型层之前期准备 模型层 ...
- Django(十五)模板详解:模板标签、过滤器、模板注释、模板继承、html转义
一.模板的基础配置及使用 [参考]https://docs.djangoproject.com/zh-hans/3.0/topics/templates/ 作为Web框架,Django提供了模板,用于 ...
随机推荐
- fetchAll 的小小分析
includes\database\prefetch.inc line 425 $this->defaultFetchStyle: fetch_object int 5protected $de ...
- form 表单中input 使用disable属性
记录一下今天踩得坑. 在使用form表单提交的时候,input用了disable属性,在查找了好久之后,找到原因,万万没想到是因为disable. 修改方法:disable改为readonly dis ...
- VS code 安装后gdb调试无法显示STL内容的问题
bar {...} std::_Vector_base<TSample<MyTraits>, std::allocator<TSample<MyTraits> &g ...
- Flutter statecontroller.update(MaterialState.disabled,false)无效
因为中间会调用 void initStatesController() { if (widget.statesController == null) { internalStatesControlle ...
- Demo of canvas, canvas optimization and svg
It used the canvas to draw the curves in the old project, and the client felt that it was vague, so ...
- SQL预编译
1.数据库预编译起源 (1)数据库SQL语句编译特性: 数据库接受到sql语句之后,需要词法和语义解析,优化sql语句,制定执行计划.这需要花费一些时间.但是很多情况,我们的一条sql语句可能会反复执 ...
- ModuleNotFoundError: No module named 'numpy.testing.nosetester'解决方法
在import numpy的时候编译器提示这个问题. 问题的原因是numpy版本>1.18,而scipy的版本<=0.19 解决方案: 卸载当前版本scipy(0.19),安装更高版本sc ...
- JAVA XML转对象
最近遇到XML转对象进行业务操作的问题 这是我需要解析的XML 1,建XML对应自己需要参数的Bean.有的很长很乱,没必要全部建,只建自己需要的就行了 import lombok.Data; imp ...
- 计蒜客(Stone Game)01背包
题意:在集合中挑一些数,形成一个集合S,剩下的数形成另一个集合P,使得S>= P ,并且对于S中任意元素ai,S-ai<=P 问有多少种方案. 题目链接:https://nanti.jis ...
- spring boot权限设计资源
源代码 https://github.com/2237995998/education 博客说明 https://blog.csdn.net/weixin_45138601/article/detai ...