jinja2 简单入门
原文链接:https://www.jianshu.com/p/07443255ea05
先创建一个简单的 jinja_demo.py
:
from jinja2 import Environment, FileSystemLoader
import os.path# __file__ 就是本文件的名字
# 得到放置模板的目录
path = '{}/templates/'.format(os.path.dirname(__file__))# 创建一个加载器, jinja2 会从这个目录中加载模板
loader = FileSystemLoader(path)# 用加载器创建一个环境, 有了它才能读取模板文件
env = Environment(loader=loader)# 调用 get_template() 方法加载模板并返回
template = env.get_template('demo.html')# 用 render() 方法渲染模板
# 可以传递参数
ns = list(range(3))
us = [{'id': 1,'name': 'gua',},{'id': 2,'name': '瓜',},
]print(template.render(name='gua', numbers=ns, users=us))
编写 demo.html
:
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>jinja demo</title>
</head>
<body><!-- 变量替换 --><h1>{{ name }}</h1><!-- 循环 -->{% for n in numbers %}<span class="number">{{ n }}</span>{% endfor %}<!-- 循环加对象/字典访问 --><div class="user-container">{% for u in users %}<div class="user-cell"><span>{{ u.name }}</span><span>{{ u.id }}</span></div>{% endfor %}</div>
</body>
</html>
渲染成以下的 HTML 代码:
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>jinja demo</title>
</head>
<body><!-- 变量替换 --><h1>gua</h1><!-- 循环 --><span class="number">0</span><span class="number">1</span><span class="number">2</span><!-- 循环加对象/字典访问 --><div class="user-container"><div class="user-cell"><span>gua</span><span>1</span></div><div class="user-cell"><span>瓜</span><span>2</span></div></div>
</body>
</html>
所以操作都和 Django 的模板引擎非常类似。
作者:SingleDiego
链接:https://www.jianshu.com/p/07443255ea05
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
jinja2 简单入门相关推荐
- BizTalk 2006 简单入门示例程序(附源项目文件下载)
BizTalk 2006 简单入门示例程序(附源项目文件下载) 为初学BizTalk Server 2006的开发人员,提供一个简单入门的示例程序,包括一个Receive Port.Send Port ...
- python如何读取mat文件可视化_python Matplotlib数据可视化(1):简单入门
1 matplot入门指南 matplotlib是Python科学计算中使用最多的一个可视化库,功能丰富,提供了非常多的可视化方案,基本能够满足各种场景下的数据可视化需求.但功能丰富从另一方面来说也意 ...
- ARM NEON 编程简单入门1
原文:http://blog.csdn.net/silentob/article/details/72954618 ARM NEON 编程简单入门1 NEON简介 NEON是适用于ARM Corte ...
- Python 简单入门指北(二)
Python 简单入门指北(二) 2 函数 2.1 函数是一等公民 一等公民指的是 Python 的函数能够动态创建,能赋值给别的变量,能作为参传给函数,也能作为函数的返回值.总而言之,函数和普通变量 ...
- EChart.js 简单入门
EChart.js 简单入门 最近有一个统计的项目要做,在前端的数据需要用图表的形式展示.网上搜索了一下,发现有几种统计图库. MSChart 这个是Visual Studio里的自带控件,使用比 ...
- 【我的区块链之路】- Hyperledger fabric的简单入门(四)链码的编写及调试
[我的区块链之路]- Hyperledger fabric的简单入门(四)链码的编写及调试 之前的文章中我们有讲过了fabric的一些核心的配置文件的选项说明,讲过fabric 的网络启动 ...
- 基于vue-cli、elementUI的Vue超简单入门小例子
基于vue-cli.elementUI的Vue超简单入门小例子 这个例子还是比较简单的,独立完成后,能大概知道vue是干嘛的,可以写个todoList的小例子. 开始写例子之前,先对环境的部署做点简单 ...
- 【java开发系列】—— spring简单入门示例
回顾 1 JDK安装 2 Struts2简单入门示例 前言 作为入门级的记录帖,没有过多的技术含量,简单的搭建配置框架而已.这次讲到spring,这个应该是SSH中的重量级框架,它主要包含两个内容:控 ...
- JAVA Bean和XML之间的相互转换 - XStream简单入门
JAVA Bean和XML之间的相互转换 - XStream简单入门 背景介绍 XStream的简介 注解简介 应用实例 背景介绍 我们在工作中经常 遇到文件解析为数据或者数据转化为xml文件的情况, ...
最新文章
- php history.back,js history.back(); 后表单数据没有保持 的问题
- android ui篇
- Linux磁盘管理基础学习
- java 更新订单状态_Java 8状态更新
- Python数据治理,异常点检测,离群点异常点分析
- 介绍一款喜欢的产品|产品经理面试题第2篇
- 写剧本、模仿声音、制造笑点,机器学习进军好莱坞
- 案例研究:中国金融科技50强之“安心de利”风控模式
- @ERROR: auth failed on module wwwroot rsync error: error starting client-server protocol (code 5) at
- echarts如何引入市级地图
- 在机器人面前,人类怎样做才能不悲观
- 【笔试题】嵌入式软件开发——嵌入式软件工程师经典笔试题
- 【JavaWeb】本地文件传输协议(File://)
- python回声程序echo 一行代码_echo speex中的回声消除程序,可以直接在vs下运 效果还 有测试语料 Audio program 238万源代码下载- www.pudn.com...
- python3合并多个docx文件
- 联合国旗舰报告《全球生物多样性展望》发布:面对最糟糕的生物多样性保护成绩单,人类该何去何从?...
- 常见的具体函数对应的抽象函数
- C语言 计算n的阶乘(函数 递归)
- 2022-7-29 小白学后端之mappedBy属性+@JsonBackReference注解+@AfterMapping注解
- JS 效果集合(回到顶部、轮播图、瀑布流、图片帧播放)
热门文章
- OpenHarmony 3.1 Release初体验 润和DAYU200开发套件
- EasyExcel解析并分割Excel、Excel分割
- 这是销售人员最必不可少的Python脚本,没有之一!批量验证和添加手机号码微信好友!
- 平均年薪33.5万!浙江大学软件工程专硕21届毕业生年薪!
- 手机直接安装linux系统6,手机直接安装linux系统
- [论文阅读]Representative Forgery Mining for Fake Face Detection
- Android Studio 无法识别MuMu模拟器、夜神模拟器的解决办法
- 自动驾驶车什么时候普及,自动驾驶还有多久普及
- Go并发编程实战 - 部分导图
- 王老吉和三鹿的精彩对话