Django自定义模板标签与过滤器


常用内置标签:

标签描述
{% for %} {% endfor %}遍历输出上下文内容
{% if %} {% endif %}对上下文条件进行判断
{% csrf_token %}生成csrf_token标签,用于防护跨站请求伪造攻击
{% url %}生成相应路由地址
{% load %}加载导入django标签库
{% static %}加载读取静态资源文件
{% extends xxx %}使当前模板继承xxx模板
{% block xxx%}重写父类模板

常用内置过滤器

内置过滤器使用形式说明
date{{ value | date:“D d M Y” }}将日期格式数据按照指定格式输出

自定义标签

  1. 项目下创建xxx文件夹,在xxx文件夹下创建__init__.py和templatetags文件夹,最后在templatetags文件夹内创建__init__.py和自定义标签py文件(mytsgs.py)
    templatetags文件夹名为固定
    在这里插入图片描述
  2. 在settings.py的INSTALLED_APPS中添加xxx(项目),否则django无法加载mydefined文件夹内容
    在这里插入图片描述
  3. 定义标签
    此处定义一个 将字符串反转的标签
    在这里插入图片描述
  4. html页面设置
    在这里插入图片描述
  5. urls与view
    在这里插入图片描述在这里插入图片描述

最终显示
在这里插入图片描述

自定义过滤器

自定义过滤器与自定义标签一样,但过滤器更为简单,值需定义相关函数即可,此处定义实现模板上下文字符替换的过滤器

  1. 与自定义标签一样在templatetags中创建自定义过滤器py文件
    在这里插入图片描述
    在这里插入图片描述
  2. views编写
    在这里插入图片描述
  3. html页面编写
    在这里插入图片描述

最终显示: 将 ‘hello django’ 中 ’django‘ 替换为 ’替换为Python‘
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值