原文链接: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 简单入门相关推荐

  1. BizTalk 2006 简单入门示例程序(附源项目文件下载)

    BizTalk 2006 简单入门示例程序(附源项目文件下载) 为初学BizTalk Server 2006的开发人员,提供一个简单入门的示例程序,包括一个Receive Port.Send Port ...

  2. python如何读取mat文件可视化_python Matplotlib数据可视化(1):简单入门

    1 matplot入门指南 matplotlib是Python科学计算中使用最多的一个可视化库,功能丰富,提供了非常多的可视化方案,基本能够满足各种场景下的数据可视化需求.但功能丰富从另一方面来说也意 ...

  3. ARM NEON 编程简单入门1

    原文:http://blog.csdn.net/silentob/article/details/72954618  ARM NEON 编程简单入门1 NEON简介 NEON是适用于ARM Corte ...

  4. Python 简单入门指北(二)

    Python 简单入门指北(二) 2 函数 2.1 函数是一等公民 一等公民指的是 Python 的函数能够动态创建,能赋值给别的变量,能作为参传给函数,也能作为函数的返回值.总而言之,函数和普通变量 ...

  5. EChart.js 简单入门

    EChart.js 简单入门 最近有一个统计的项目要做,在前端的数据需要用图表的形式展示.网上搜索了一下,发现有几种统计图库. MSChart   这个是Visual Studio里的自带控件,使用比 ...

  6. 【我的区块链之路】- Hyperledger fabric的简单入门(四)链码的编写及调试

    [我的区块链之路]- Hyperledger fabric的简单入门(四)链码的编写及调试       之前的文章中我们有讲过了fabric的一些核心的配置文件的选项说明,讲过fabric 的网络启动 ...

  7. 基于vue-cli、elementUI的Vue超简单入门小例子

    基于vue-cli.elementUI的Vue超简单入门小例子 这个例子还是比较简单的,独立完成后,能大概知道vue是干嘛的,可以写个todoList的小例子. 开始写例子之前,先对环境的部署做点简单 ...

  8. 【java开发系列】—— spring简单入门示例

    回顾 1 JDK安装 2 Struts2简单入门示例 前言 作为入门级的记录帖,没有过多的技术含量,简单的搭建配置框架而已.这次讲到spring,这个应该是SSH中的重量级框架,它主要包含两个内容:控 ...

  9. JAVA Bean和XML之间的相互转换 - XStream简单入门

    JAVA Bean和XML之间的相互转换 - XStream简单入门 背景介绍 XStream的简介 注解简介 应用实例 背景介绍 我们在工作中经常 遇到文件解析为数据或者数据转化为xml文件的情况, ...

最新文章

  1. php history.back,js history.back(); 后表单数据没有保持 的问题
  2. android ui篇
  3. Linux磁盘管理基础学习
  4. java 更新订单状态_Java 8状态更新
  5. Python数据治理,异常点检测,离群点异常点分析
  6. 介绍一款喜欢的产品|产品经理面试题第2篇
  7. 写剧本、模仿声音、制造笑点,机器学习进军好莱坞
  8. 案例研究:中国金融科技50强之“安心de利”风控模式
  9. @ERROR: auth failed on module wwwroot rsync error: error starting client-server protocol (code 5) at
  10. echarts如何引入市级地图
  11. 在机器人面前,人类怎样做才能不悲观
  12. 【笔试题】嵌入式软件开发——嵌入式软件工程师经典笔试题
  13. 【JavaWeb】本地文件传输协议(File://)
  14. python回声程序echo 一行代码_echo speex中的回声消除程序,可以直接在vs下运 效果还 有测试语料 Audio program 238万源代码下载- www.pudn.com...
  15. python3合并多个docx文件
  16. 联合国旗舰报告《全球生物多样性展望》发布:面对最糟糕的生物多样性保护成绩单,人类该何去何从?...
  17. 常见的具体函数对应的抽象函数
  18. C语言 计算n的阶乘(函数 递归)
  19. 2022-7-29 小白学后端之mappedBy属性+@JsonBackReference注解+@AfterMapping注解
  20. JS 效果集合(回到顶部、轮播图、瀑布流、图片帧播放)

热门文章

  1. OpenHarmony 3.1 Release初体验 润和DAYU200开发套件
  2. EasyExcel解析并分割Excel、Excel分割
  3. 这是销售人员最必不可少的Python脚本,没有之一!批量验证和添加手机号码微信好友!
  4. 平均年薪33.5万!浙江大学软件工程专硕21届毕业生年薪!
  5. 手机直接安装linux系统6,手机直接安装linux系统
  6. [论文阅读]Representative Forgery Mining for Fake Face Detection
  7. Android Studio 无法识别MuMu模拟器、夜神模拟器的解决办法
  8. 自动驾驶车什么时候普及,自动驾驶还有多久普及
  9. Go并发编程实战 - 部分导图
  10. 王老吉和三鹿的精彩对话