Chinaunix首页 | 论坛 | 博客
  • 博客访问: 34671
  • 博文数量: 10
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 120
  • 用 户 组: 普通用户
  • 注册时间: 2014-06-03 18:24
个人简介

有激情,热情,做自己喜欢做的事!

文章分类

全部博文(10)

文章存档

2015年(3)

2014年(7)

我的朋友

分类: Python/Ruby

2015-03-10 16:27:22

Flask使用的是Jinja2模板引擎
常见的语法特点有:
 

点击(此处)折叠或打开

  1. from flask import template_render

  2. @app.route('/user/')
  3. def user(name):
  4.       return render_template('user.html', name=name)
模板的默认位置是应用目录下templates文件夹

点击(此处)折叠或打开

  1. user.html

  2. <h1>my name is {{ name }}<h1>

Jinja2能够识别任意类型的变量,即使是复杂的类型如列表,字典和对象。使用方法如下

点击(此处)折叠或打开

  1. <p>A value from a dictionary: {{ mydict['key'] }}.</p>
  2. <p>A value from a list: {{ mylist[3] }}.</p>
  3. <p>A value from a list, with a variable index: {{ mylist[myintvar] }}.</p> 
  4. <p>A value from an object method: {{ myobj.somemethod() }}.
变量在模板中使用时也可以使用过滤器,


点击(此处)折叠或打开

  1. Hello, {{ name|capitalize }}
默认情况下Jinja2模板会对所有的变量进行安全处理,如变量值为'

Hello

',会被解析为
'<h1>Hello</h1>' 所以这会导致Html标签不被浏览器解释 在模板中使用控制结构
阅读(331) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~