python-jinja2模板引擎

2023-11-18

1. 什么是Jinja2模板引擎?

1). python的Web开发中, 业务逻辑(实质就是视图函数的内容)和页面逻辑(html
文件)分开的, 使得代码的可读性增强, 代码容易理解和维护;

2). 模板渲染: 在html文件中,通过动态赋值 ,
将重新翻译好的html文件(模板引擎生效) 返回给用户的过程。

3). 其他的模板引擎: Mako, Template, Jinja2

2. 语法

1). Jinja2变量显示语法: { { 变量名 }}、过滤器

完整的过滤器查看位置: http://jinja.pocoo.org/docs/templates/#builtin-filters
Jinja2变量内置过滤器:
safe 渲染值时不转义
capitalize 把值的首字母转换成大写,其他字母转换成小写
lower 把值转换成小写形式
upper 把值转换成大写形式
title 把值中每个单词的首字母都转换成大写
trim 把值的首尾空格去掉
striptags 渲染之前把值中所有的 HTML 标签都删掉

实现变量过滤器:

from flask import  Flask, render_template
app = Flask(__name__)

class User(object):
    def __init__(self, name, age):
        self.name = name
        self.age = age

    def __str__(self):
        return  "<User: %s>" %(self.name)

@app.route('/')
def index():
    message = " this is a Message "
    li = ['fentiao', 'fensi', 'fendai']
    info = {
        'name': 'fentiao',
        'age':10
    }
    fentiao = User(name="粉条", age=5)
    tags = "<h1>hello world</h1>"

	# 
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python-jinja2模板引擎 的相关文章

随机推荐

  • 1055. 集体照 (25) PAT乙级真题

    1055 集体照 25 拍集体照时队形很重要 这里对给定的N个人K排的队形设计排队规则如下 每排人数为N K 向下取整 多出来的人全部站在最后一排 后排所有人的个子都不比前排任何人矮 每排中最高者站中间 中间位置为m 2 1 其中m为该排人
  • clockwise print binary search tree

    给一个二叉树 顺时针打印出所有的节点 例如 应该打印 20 8 4 10 14 25 22 思路 可以分为三步打印 1 打印左边界 最后一个叶子节点不打印 2 打印所有叶子结点 3 打印右边界 根和最后一个叶子结点不打印 代码如下 void
  • buu [ACTF2020 新生赛]Exec

    这道题倒是很直白简单 基本上知道命令注入这个知识点就行 命令注入 127 0 0 1 ls 127 0 0 1 ls flag 127 0 0 1 cat flag
  • 软件测试包括哪些内容

    以下是一些需要考虑的步骤 1 得到需求 功能设计 内部设计说书和其他必要的文档 2 得到预算和进度要求 3 确定与项目有关的人员和他们的责任 对报告的要求 所需的标准和过程 例如发行过程 变更过程 等等 4 确定应用软件的高风险范围 建立优
  • NIO - IO多路复用详解

    文章目录 Java NIO IO多路复用详解 现实场景 典型的多路复用IO实现 Reactor模型和Proactor模型 传统IO模型 Reactor事件驱动模型 Reactor模型 业务处理与IO分离 Reactor模型 并发读写 Rea
  • Adobe PhotoShop安装程序无法初始化的解决办法

    近日需要使用PhotoShop 不想下了好几个水版 给大家一个可以用的 http pan baidu com s 1dDnJLy5 不仅安装不了而且把机子的注册表改了 再次安装时就出现了 安装程序无法初始化 的问题 网上各种查找 零零散散的
  • 范数(简单的理解)、范数的用途、什么是范数

    没学好矩阵代数的估计范数也不是太清楚 当然学好的人也不是太多 范数主要是对矩阵和向量的一种描述 有了描述那么 大小就可以比较了 从字面理解一种比较构成规范的数 有了统一的规范 就可以比较了 例如 1比2小我们一目了然 可是 3 5 3 和
  • kafka消费的三种模式_快速认识Kafka

    1 Kafka是什么 简单的说 Kafka是由Linkedin开发的一个分布式的消息队列系统 Message Queue kafka的架构师jay kreps非常喜欢franz kafka 觉得kafka这个名字很酷 因此将linkedin
  • 【TypeScript(一)】TypeScript的变量类型及声明

    TypeScript的变量类型及声明 TS和JS最大的区别就是在其中给变量引入了类型的概念 比如像之前我们使用JS的时候 var a 10 这时a是数据类型 但当如果我们后面要使用a 我们也可以a hello 这时a就变成了一个字符串类型
  • 微信小程序开发设置获取权限管理,摄像头权限,位置权限,用户信息权限等

    在小程序开发的时候 我们总会遇到很多权限问题 比如摄像头权限 位置权限 用户信息权限等 如果不加以判断 很难给用户一个好的体验 有一天 小明来参观一个拍照微信小程序 他很感兴趣 看着精美的页面 忍不住点击了拍照按钮 然而 他太兴奋了 以至于
  • linux 系统调用列表 /usr/include/asm/unistd.h

    一 进程控制 fork 创建一个新进程 clone 按指定条件创建子进程 execve 运行可执行文件 exit 中止进程 exit 立即中止当前进程 getdtablesize 进程所能打开的最大文件数 getpgid 获取指定进程组标识
  • pybind 传递指针

    编码h264可以参考 https blog csdn net jacke121 article details 87484745 python部分 先接收指针vp 再调用 是可以的 coding utf 8 import binddemo
  • 连接db2的客户端工具(原创)

    最近在用友做项目 用得数据库是db2 以前从来没用过 但是对于写程序来说 啥数据库都一样 都是那几个语句 能执行就行 说是这样说 但是真用上就发现问题了 最大的就是没有好的客户端工具 网上搜了很多 什么toad quest都用了 感觉用着都
  • pytorch入门day5-卷积神经网络实战

    目录 LeNet网络实战 ResNet 训练函数 LeNet网络实战 import torch from torch utils data import DataLoader from torchvision import datasets
  • IDEA集成Git及相关操作详解

    IDEA集成Git 一 环境准备 1 配置Git忽略文件 2 Git程序定位 二 Git集成及相关操作 1 Git本地库初始化 2 文件 或目录 添加暂存区及添加本地库 3 查看历史版本及版本切换 4 创建及切换分支 5 合并分支 一 环境
  • JavaScript 设计模式 – 通过示例进行解释

    大家好 在本文中 我将解释什么是设计模式以及它们为何有用 目录 什么是设计模式 创意设计模式 单例模式 工厂方法模式 抽象工厂模式
  • CORS on Nginx

    https enable cors org server nginx html Wide open CORS config for nginx location if request method OPTIONS add header Ac
  • 麒麟V10编译安装GCC9.3

    在麒麟V10 arm64架构 桌面版系统上编译安装gcc9 3版本 麒麟V10自带的gcc版本是5 4 根据以下步骤顺序执行即可安装成功 1 下载解压gcc wget https mirrors tuna tsinghua edu cn g
  • 软件外包开发的原型图工具

    在软件开发中需要用到原型图工具来将需求转化为图形界面 这样可以更好更准确的表达需求的实现方式 与传统的需求文档相比 原型图的表达更直接 不但可以画出UI 也支持UI之间的跳转连接 与最终的实现效果基本是一样的 今天和大家分享几个原型图工具
  • python-jinja2模板引擎

    文章目录 1 什么是Jinja2模板引擎 2 语法 1 Jinja2变量显示语法 变量名 过滤器 如何自定义过滤器 2 for循环 3 if语句 4 宏的操作 相当于函数 5 include包含操作 6 模板的继承 一般网站的导航栏和底部不