Python Tornado

2023-01-31 01:01:00 python tornado

一、先安装

pip3 install tornado

二、小试牛刀

from tornado.WEB import Application
from tornado.web import RequestHandler
from tornado.ioloop import IOLoop

class MainHandler(RequestHandler):
    def get(self, *args, **kwargs):
        self.write("Hello World")

app = Application([
    (r"/", MainHandler),
])

if __name__ == '__main__':
    app.listen("5000")
    print("Http://127.0.0.1:5000")
    IOLoop.instance().start()

三、路由配置

application = tornado.web.Application([
    (r"/index", MainHandler),
    (r"/story/([0-9]+)", StoryHandler), # 带了参数,需要在你的请求函数中写参数
])

application = tornado.web.Application([
    (r"/index", MainHandler),

])
application.add_handlers(r"asdfasdf.org$",[ # 牛逼的绑定域名
(r'index/1.html/',MainHandler,),])

四、模板的那些事
在tornado.web.RequestHandler里面已经给你写好了一个render方法,你可以在本地写一个模板,然后用父类的方法去返回。
模板语言,也就是views.py给模板语言的传值,是通过render后面的{'k1':'v1'}传数据,或者用内置的方法。内置方法是用{% %}包裹起来的,而显示传来的数据要用{{ }}。但是,学过其他语言框架的人知道,如果用for循环的话,是用{% endfor %}来结束的。但在TORNADO里注意了!你要用{% end %}结束。if也是一样的!
如果要传数据的话,就加字典。
self.render('layout.html',{"k1":'v1'})
如果在后台拿数据的话,就用{{k1}}来找到。
好了,今天就讲到这,给大家留个作业:
登录系统:

  1. 漂亮,好看的页面
  2. 登录成功到http://www.baidu.com里。
    作业小提示:
    如果要post请求,就用post函数。
    如果要设置静态文件和模板,用settings字典完成,在Application写**settings.

相关文章