认识tornado(五)
Tornado 自带了模板系统,模板语法与 Django 差异不大。这里简单地介绍如何使用 Tornado 的模板系统。
首先是编写 URL 规则与 Handler:
01 class NowaMagicHandler(tornado.web.RequestHandler):
02 def get(self):
03 content = u'Welcome to NowaMagic.'
04 #self.write( content )
05 self.render("index.html")
06
07 def main():
08 tornado.options.parse_command_line()
09 application = tornado.web.Application([
10 (r"/", MainHandler),
11 (r"/nowamagic/", NowaMagicHandler),
12 ],**settings)
13 http_server = tornado.httpserver.HTTPServer(application)
14 http_server.listen(options.port)
15 tornado.ioloop.IOLoop.instance().start()
然后是 index.html
01 <html>
02 <head>
03 <title>{{ title }}</title>
04 </head>
05 <body>
06 <h1>{{ title }}</h1>
07 <ul>8 {% for item in items %}
09 <li>{{ escape(item) }}</li>
10 {% end %}
11 </ul>
12 </body>
13 </html>
文件包含也是用 {% include 'header.html' %} 这样的语法,和 Django 里是一样的。
还有就是对静态文件的处理,一般是建一个叫 static 的文件夹,然后把js,css,images分类放进去。当然在程序里也得写个 setting:
1 import os
2
3 settings = {
4 "static_path" : os.path.join(os.path.dirname(__file__), "static"),
5 "template_path" : os.path.join(os.path.dirname(__file__), "templates"),
6 "gzip" : True,
7 "debug" : True,
8 }
setting 里还制定了模板的路径。关于这个 setting,更多可以参考这篇文章里提到的:如何开启Tornado的调试模式。
就这样,Tornado 的模板就OK了。
认识tornado(一)
认识tornado(二)
认识tornado(三)
认识tornado(四)
认识tornado(五)
认识tornado(五)的更多相关文章
- 第五篇:白话tornado源码之褪去模板的外衣
上一篇<白话tornado源码之请求来了>介绍了客户端请求在tornado框架中的生命周期,其本质就是利用epoll和socket来获取并处理请求.在上一篇的内容中,我们只是给客户端返回了 ...
- Python开发【第十五篇】:Web框架之Tornado
概述 Tornado 是 FriendFeed 使用的可扩展的非阻塞式 web 服务器及其相关工具的开源版本.这个 Web 框架看起来有些像web.py 或者 Google 的 webapp,不过为了 ...
- 《Introduction to Tornado》中文翻译计划——第五章:异步Web服务
http://www.pythoner.com/294.html 本文为<Introduction to Tornado>中文翻译,将在https://github.com/alioth3 ...
- 潭州课堂25班:Ph201805201 tornado 项目 第五课 增加用户系统-用户中心(课堂笔记)
tornado 相关说明 在 users 表中创建记录,做测试 在项目根目录下创建 test.py # -*- coding: utf-8 -*- # 斌彬电脑 # @Time : 2019/2/27 ...
- Python(九)Tornado web 框架
一.简介 Tornado 是 FriendFeed 使用的可扩展的非阻塞式 web 服务器及其相关工具的开源版本.这个 Web 框架看起来有些像web.py 或者 Google 的 webapp,不过 ...
- Python框架之Tornado(二)请求阶段
概述 上图是tornado程序启动以及接收到客户端请求后的整个过程,对于整个过程可以分为两大部分: 启动程序阶段,又称为待请求阶段(上图1.2所有系列和3.0) 接收并处理客户端请求阶段(上图3系列) ...
- tornado web 框架的认识
tornado 简介 1,概述 Tornado就是我们在 FriendFeed 的 Web 服务器及其常用工具的开源版本.Tornado 和现在的主流 Web 服务器框架(包括大多数 Python 的 ...
- 第一个web框架tornado
简介 tornado,是我学到的第一个web框架是 FriendFeed 使用的可扩展的非阻塞式 web 服务器及其相关工具的开源版本.这个 Web 框架看起来有些像web.py 或者 Google ...
- web框架 之 Tornado
初识 Tornado : tornado web server 是使用python编写出来的一个轻量级.高可伸缩性和非阻塞IO的Web服务器软件,其特点是采用epoll非阻塞IO,相应快速,可处理数千 ...
随机推荐
- Debian 的 apt 命令不能使用自动完成的问题
我的Debian是8.10,使用apt-get命令可以正常使用自动完成功能,但apt命令却不行,在国外的一个网站上找到了解决办法: 从这个地址 http://pastebin.com/PRBMt3an ...
- Popup.js
test.html <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML> ...
- Exception sending context initialized event to listener instance of class ssm.blog.listener.InitBloggerData java.lang.NullPointerException at ssm.blog.listener.InitBloggerData.c
spring注入是分两部分执行的 首先是 先把需要注入的对象加载到spring容器 然后在把对象注入到具体需要注入的对象里面 这种就是配置和注解的注入 getbean方式其 ...
- jQuery Accordion 插件用于创建折叠菜单
jQuery Accordion 插件用于创建折叠菜单.它通常与嵌套的列表.定义列表或嵌套的 div 一起使用.选项用于指定结构.激活的元素和定制的动画. 后期完善
- Mac 常用的手势
可以在触屏版-更多手势查看 技巧:前期慢慢滑动练习.一定要慢慢滑动,这样可以清楚的看出有没有产生效果,尤其注意大拇指滑动的感觉. 回到桌面:四指向外 打开Lanuchpad:四指向内 查看所有任务:三 ...
- Python 函数常用方法总结
一.函数的定义与优势: 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段.函数能提高应用的模块性,和代码的重复利用率. Python提供了许多内建函数,比如print(),但也可以自己 ...
- H5area的热区锚点随着图片的尺寸而变化
<area shape="rect" coords="338,308,609,589" > <img id="pic" s ...
- application/x-www-form-urlencoded接口响应报文中文乱码
1.如何处理乱码 在进行接口测试时,在用httpclient post请求时,对于Content-Type:application/json来说,在写测试脚本时只需要为头信息和post请求指定相应编码 ...
- oracle序列在insert into 语句中的使用
很多人创建了序列,但是在插入语句中不知道怎么使用,在此做个简单介绍. oracle序列有两个参数:nextval和currval,使用的时候,需要输入sequence_name.nextval或seq ...
- vue 过渡效果-列表过渡
到目前为止,关于过渡我们已经讲到, 单个节点 同一时间渲染多个节点的一个 那么怎么同时渲染整个列表,比如使用v-if?在这种场景下,使用<transition-group>组件,在我们深入 ...