您的位置:首页 > 其它

关于tornado中模板的渲染

2017-06-30 10:13 465 查看

一、关于模板中符合的使用

1、
{{}}
双大括号,内容可以是任何的
python
表达式(变量常见)

2、
{%%}
模板中的控制语句放在
{%%}


二、关于
{{}}
的使用

1、传递变量

class IndexHandler(tornado.web.RequestHandler):
def get(self):
name = u'张三'
age = 20
self.render("template-demo.html",name=name,age=age)


<p>{{ name }}</p>
<p>{{ age }}</p>


2、一般不会一个一个参数传递的,直接传递一个对象

class IndexHandler(tornado.web.RequestHandler):
def get(self):
resultDate = {
'name':u'张三',
'age':20
}
self.render("template-demo.html",**resultDate)


3、在
{{}}
中使用表达式

<p>{{ 1+2 }}</p>


4、在
{{}}
使用函数

class IndexHandler(tornado.web.RequestHandler):
def foo(self):
return u'我是函数'

def get(self):
resultDate = {
'name':u'张三',
'age':20,
'foo':self.foo
}
self.render("template-demo.html",**resultDate)


<p>{{ name }}</p>
<p>{{ age }}</p>
<p>{{ 1+2 }}</p>
<p>{{ foo() }}</p>


三、关于
{% %}
的使用

1、模板的控制语句(注意要结束语句)

{% if age > 20 %}
...
{% elif %}
...
{% else %}
...
{% end %}


2、模板中使用
for
语句

{% for item in list1 %}

{% end %}


class IndexHandler(tornado.web.RequestHandler):
def get(self):
resultDate = {
'names':[u'张三',u'李四',u'王五'],
'urls':[
('https://www.hao123.com/','hao123'),
('http://www.sina.com.cn/','新浪')
]
}
self.render("template-demo.html",**resultDate)


{% for item in names %}
<p>{{ item }}</p>
{% end %}

{% for url in urls %}
<p><a href="{{ url[0] }}">{{ url[1] }}</a> </p>
{% end %}


四、使用
static_url
加载静态文件

<link rel="stylesheet" href="{{ static_url('xxx/xx.css') }}">
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  tornado