使用JiaJa2通过模板生成文本文件

使用JiaJa2通过模板生成文本文件

JiaJa2作为Flask框架中的模板系统被广泛使用,可以快速生成HTML文件;

JinJa2也可以单独使用通过模板快速生成自己想要的文件;

python文件调用模板进行渲染的基本使用方法如下:

from jinja2 import loaders, FileSystemLoader, Environment

# 指定模板文件搜索的开始位置
TemplateLoader = FileSystemLoader(searchpath="./", encoding='utf-8')
TemplateEnv = Environment(loader=TemplateLoader)
# 这里的文件位置是以searchpath作为基准的,而不是当前文件夹.
template = TemplateEnv.get_template("./test.html")
html = template.render({"config": config})

需要注意的是:
如果传到模板文件的变量config是一个列表(字典)等容器类型;
当config作为整体被使用时,渲染之后不会进行decode,造成的结果就是中文显示不出来,解决办法是在模板文件中将config中的元素一一取出;

  • 模板文件正确写法
{% for i in config %}
    i
{ endfor }
  • 有问题的写法
{{config}}  //直接渲染列表整体将造成里面的中文无法正常显示

JiaJa2常用语法:

  • 表示变量
{{变量}}
  • 语句
{% for i in 变量名 %}
    {% if loop.index<10 %}
        i
    {% endif %}
{% endfor %}
  • for循环中经常会结合的变量
写法含义
loop.index当前迭代的索引(从1开始)
loop.index0当前迭代的索引(从0开始)
loop.first是否是第一次迭代,返回True/False
loop.last是否是最后一次迭代,返回True/False
loop.length序列的长度

转载于:https://www.cnblogs.com/aloe-n/p/7775166.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值