tornado 4、模板使用

一.定义模板地址

首先我们需要定义一下模板所在地址,让tornado知道去哪里找模板,一般我们把地址写在入口文件中,详情可以看《tornado 1. 项目结构初入》。下列代码static_path的值就是模板的地址。

settings = {
     template_path=os.path.join(os.path.dirname(__file__),"template"),
     'debug' : True,
}

二.传递参数到模板中

当我们在handler处理好数据后,就可以把数据传递到相应的模板中去。

class MainHandler(tornado.web.RequestHandler):
    def com(a):
        return a
    def post(self):
        number = self.get_argument('num')
        self.render('main.html', quantity=number,com=com())

上述代码中渲染模板路径下的main.html模板,其中的变量number的值传递到模板中去,在模板中我们可以使用quantity的获取变量值。你甚至可以将一个函数传到模板中去,如上面com()函数

三.填充及控制语句

在main.html文件中填充变量,可以使用下列方式获取值:

{{ quantity }}
{{ com(1) }}

同时tornado还支持一些简单的控制语句:

 {%if 或者 for %}
     ... 这里是各种表达式
 {%end%}

Tornado在所有模板中默认提供了一些便利的函数。它们包括:

  1. escape(s):替换字符串s中的&、<、>为他们对应的HTML字符。
  2. url_escape(s):使用urllib.quote_plus替换字符串s中的字符为URL编码形式。
  3. json_encode(val):将val编码成JSON格式。(在系统底层,这是一个对json库的dumps函数的调用。查阅相关的文档以获得更多关于该函数接收和返回参数的信息。)
  4. squeeze(s):过滤字符串s,把连续的多个空白字符替换成一个空格。

三.其他

在模板中设置变量:

{%set str='xxxx'%}
使用:{{str}}

模板转义:转义是为了防止你的访客进行恶意攻击的,但当你不希望转移时,可以使用raw来阻止对变量转义。

{% raw mail %}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值