Django自定义过滤器与模板继承

目录

一、自定义过滤器

1. 前期准备

2. 过滤器定义与使用

3. 自定义标签

二、模板继承

1. 双栏布局的网页

2. 如何实现模板继承?


一、自定义过滤器

1. 前期准备

①查看Django官方文档进行学习

②在the_7应用下创建一个templatetags目录:

③创建__init__.py确保其是一个python包:

④在templatetags目录下还要创建一个py文件,名字随便取,用来存放所有自定义的过滤器:

 

2. 过滤器定义与使用

定义好过滤器后要加上装饰器才能使用:

定义views,并创建对应urls和HTML文件

前期准备中官方文档提到必须在模板中添加{% load poll_extras %}这条语句才能起作用

运行项目,输入路由,成功将HeLLO变成小写:

如何给过滤器起名字:

名字更改后也要在相应的模板中进行更改,否则无法使用过滤器:

带参过滤器

若yy对应的值为空,则打印default_text的值,不为空则打印yy对应的值:

注意:自定义过滤器只是带有一个或两个参数

3. 自定义标签

simple_tag

inclusion_tag 

二、模板继承

模板继承就是一个偷懒神器

1. 双栏布局的网页

前端代码如下:

view.py渲染

2. 如何实现模板继承?

使用Extends,操作如下:

新建一个base页面,把index页面内容复制到base页面,删掉index页面内容,使用extends,继承base页面的内容到index页面

使用Block用来“挖坑”,将想要修改的地方包进去

在base页面把可能需要替换的部分前后写上该语句,相当于挖了一个坑,appbar只是一个名字,可以随便取,但尽量要有识别性

在另一个index页面需要修改继承页面的部分内容,写法如下:

替换成功:

block.super

在修改内容的同时也继承了父类

include

将其他页面整个渲染到当前页面里

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

TWAS@py

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值