Tornado 自带了模板系统,模板语法与 Django 差异不大。这里简单地介绍如何使用 Tornado 的模板系统。

首先是编写 URL 规则与 Handler:

  1. 01 class NowaMagicHandler(tornado.web.RequestHandler):
  2. 02 def get(self):
  3. 03 content = u'Welcome to NowaMagic.'
  4. 04 #self.write( content )
  5. 05 self.render("index.html")
  6. 06
  7. 07 def main():
  8. 08 tornado.options.parse_command_line()
  9. 09 application = tornado.web.Application([
  10. 10 (r"/", MainHandler),
  11. 11 (r"/nowamagic/", NowaMagicHandler),
  12. 12 ],**settings)
  13. 13 http_server = tornado.httpserver.HTTPServer(application)
  14. 14 http_server.listen(options.port)
  15. 15 tornado.ioloop.IOLoop.instance().start()

然后是 index.html

  1. 01 <html>
  2. 02 <head>
  3. 03 <title>{{ title }}</title>
  4. 04 </head>
  5. 05 <body>
  6. 06 <h1>{{ title }}</h1>
  7. 07 <ul>8 {% for item in items %}
  8. 09 <li>{{ escape(item) }}</li>
  9. 10 {% end %}
  10. 11 </ul>
  11. 12 </body>
  12. 13 </html>

文件包含也是用 {% include 'header.html' %} 这样的语法,和 Django 里是一样的。

还有就是对静态文件的处理,一般是建一个叫 static 的文件夹,然后把js,css,images分类放进去。当然在程序里也得写个 setting:

  1. 1 import os
  2. 2
  3. 3 settings = {
  4. 4 "static_path" : os.path.join(os.path.dirname(__file__), "static"),
  5. 5 "template_path" : os.path.join(os.path.dirname(__file__), "templates"),
  6. 6 "gzip" : True,
  7. 7 "debug" : True,
  8. 8 }

setting 里还制定了模板的路径。关于这个 setting,更多可以参考这篇文章里提到的:如何开启Tornado的调试模式

就这样,Tornado 的模板就OK了。

认识tornado(一)
认识tornado(二)
认识tornado(三)
认识tornado(四)
认识tornado(五)

来源:http://www.nowamagic.net/academy/detail/1332566

认识tornado(五)的更多相关文章

  1. 第五篇:白话tornado源码之褪去模板的外衣

    上一篇<白话tornado源码之请求来了>介绍了客户端请求在tornado框架中的生命周期,其本质就是利用epoll和socket来获取并处理请求.在上一篇的内容中,我们只是给客户端返回了 ...

  2. Python开发【第十五篇】:Web框架之Tornado

    概述 Tornado 是 FriendFeed 使用的可扩展的非阻塞式 web 服务器及其相关工具的开源版本.这个 Web 框架看起来有些像web.py 或者 Google 的 webapp,不过为了 ...

  3. 《Introduction to Tornado》中文翻译计划——第五章:异步Web服务

    http://www.pythoner.com/294.html 本文为<Introduction to Tornado>中文翻译,将在https://github.com/alioth3 ...

  4. 潭州课堂25班:Ph201805201 tornado 项目 第五课 增加用户系统-用户中心(课堂笔记)

    tornado 相关说明 在 users 表中创建记录,做测试 在项目根目录下创建 test.py # -*- coding: utf-8 -*- # 斌彬电脑 # @Time : 2019/2/27 ...

  5. Python(九)Tornado web 框架

    一.简介 Tornado 是 FriendFeed 使用的可扩展的非阻塞式 web 服务器及其相关工具的开源版本.这个 Web 框架看起来有些像web.py 或者 Google 的 webapp,不过 ...

  6. Python框架之Tornado(二)请求阶段

    概述 上图是tornado程序启动以及接收到客户端请求后的整个过程,对于整个过程可以分为两大部分: 启动程序阶段,又称为待请求阶段(上图1.2所有系列和3.0) 接收并处理客户端请求阶段(上图3系列) ...

  7. tornado web 框架的认识

    tornado 简介 1,概述 Tornado就是我们在 FriendFeed 的 Web 服务器及其常用工具的开源版本.Tornado 和现在的主流 Web 服务器框架(包括大多数 Python 的 ...

  8. 第一个web框架tornado

    简介 tornado,是我学到的第一个web框架是 FriendFeed 使用的可扩展的非阻塞式 web 服务器及其相关工具的开源版本.这个 Web 框架看起来有些像web.py 或者 Google ...

  9. web框架 之 Tornado

    初识 Tornado : tornado web server 是使用python编写出来的一个轻量级.高可伸缩性和非阻塞IO的Web服务器软件,其特点是采用epoll非阻塞IO,相应快速,可处理数千 ...

随机推荐

  1. C#创建COM组件供VB,PB,Delphi调用

    1  COM组件概述 COM是微软公司为了计算机工业的软件生产更加符合人类的行为方式开发的一种新的软件开发技术.在COM构架下,人们可以开发出各种各样的功能专一的组件,然后将它们按照需要组合起来,构成 ...

  2. FIS3项目构建

    概述 FIS3采取了类似CSS语法一样的配置风格,易于理解与上手.FIS3 是面向前端的工程构建工具.解决前端工程中性能优化.资源加载(异步.同步.按需.预加载.依赖管理.合并.内嵌).模块化开发.自 ...

  3. 项目启动报错:No suitable driver found for jdbc:oracle:thin:@192.168.7.146:1521:oracle

    No suitable driver found for jdbc:oracle:thin:@192.168.7.146:1521:oracle 这个错误的原因主要有以下几方面的原因: 1. url配 ...

  4. 2013夏,iDempiere来了 - v1.0c Installers (Devina LTS Release) 2013-06-27

    怀揣着为中小企业量身定做一整套开源软件解决方案的梦想开始了一个网站的搭建.http://osssme.org/ iDempiere来了 - v1.0c Installers (Devina LTS R ...

  5. 关于同一线程两次调用EnterCriticalSection的测试

    #include "stdafx.h" #include <iostream> using namespace std; #include <windows.h& ...

  6. R快速创建个文件

    cat("TITLE extra line", "2 3 5 7", "11 13 17", file="ex.data" ...

  7. ubuntu下配置.net core运行环境

    Ubuntu 16.4执行: sudo sh -c 'echo "deb [arch=amd64] https://apt-mo.trafficmanager.net/repos/dotne ...

  8. 一个来自红帽的Java垃圾回收算法,试图把停顿时间降到10毫秒以下 原创 2017-01-10 薛命灯

    转自 微信聊聊架构 GC... 早在三年前,Red Hat就启动了Shenandoah项目.Shenandoah是一种新的Java虚拟机GC算法,目标是利用现代多核CPU的优势,减少大堆内存在GC方面 ...

  9. Wpf 自定义控件(1)

    1. 新建一个wpf工程,在工程下面新建   一个文件夹themes,在themes下新建两个资源字典文件generic.xaml和PrettySeekBar.xaml generic.xaml   ...

  10. memcache命令行

    memcache运行状态可以方便的用stats命令显示. 首先用telnet 127.0.0.1 11211  [quit 退出]这样的命令连接上memcache,然后直接输入stats就可以得到当前 ...