一、关于模板中符合的使用
- 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') }}">