python - 如何查看 flask 最终输出的jinja模板
问题描述
我在模板中写了个 for 循环,类似 {% for n in Data %} 这样的,然后我想看 flask 把这个 for 循环展开后最终生成的模板文件,应该怎么去查看? 我不要通过浏览器查看源代码的方式。
问题解答
回答1:flask 使用jinja模块,直接调用就可以了, 如下
In [5]: from jinja2 import TemplateIn [6]: template = Template(’{% for n in Data %} {{ n}} {% endfor %}’)In [7]: Data = range(10) ...: In [8]: template.render(Data=Data) ...: Out[8]: u’ 0 1 2 3 4 5 6 7 8 9 ’
参考:http://docs.jinkan.org/docs/j...
回答2:使用 render_template_string 即可, 传参方式和 render_template 类似,只是第一个参数为读取的模板内容, 而不是模板文件路径示例代码如下(简短演示,就不写路由, 直接用 app_context 模拟访问):
from flask import ( Flask, render_template_string)app = Flask(__name__)tpl_args = { ’Data’: [1, 2, 3, 4, 5]}with app.app_context(): result = render_template_string(’{% for n in Data %} {{ n }} {% endfor %}’, **tpl_args) print(result)
输出如下:
相关文章:
1. 关于Apache无法启动的程序的方式是怎么解决的2. python - 用urllib抓取网页上的下载链接,目标文件是xls形式,但发现抓下来的xls是空表,里面只有一句报错信息,求帮助。3. 利用百度地图API定位及附件商家信息服务4. 网页爬虫 - python 爬虫怎么处理json内容5. python - 图片爬虫时候遇到问题 urllib.request.urlretrieve 下载到指定文件夹不成功?6. 怎么能做出标签切换页的效果,(文字内容随动)7. java - 关于京东单点登录认证的问题8. (python)关于如何做到按win+R再输入文件文件名就可以运行?9. linux - python 抓取公众号文章遇到验证问题10. win10 python3.5 matplotlib使用报错

网公网安备