1. 程式人生 > 其它 >Tornado進階——路由進階

Tornado進階——路由進階

路由進階

路由語法和引數

在路由列表的路由成員中,我們一共可以設定4個引數

url(r"/uri路徑", 檢視類, {"引數名":"引數值"}, name="路由別名")

server.py

from tornado import web
from tornado import ioloop
settings = {
    'debug': True,
}

class Home(web.RequestHandler):
    def initialize(self,company)-> str:
        # initialize 初始化方法[鉤子方法]
        self.company = company

    def get(self):
        print(self.company)
        print("uri路徑:%s" % self.reverse_url("home") ) # 對路由別名進行 反解析
        self.write("hello,get")
    def post(self):
        print(self.company)

from tornado.web import url
urls = [
    # (r"/", Home), # 這個格式的路由其實是簡寫模式, 在tornaodo.web中內部中最終由 _ApplicationRouter 的 Rule來進行封裝和匹配路由和檢視的關係
    # url(pattern=路由uri地址, handler=檢視類,kwargs=提供給檢視類的公共引數,name="路由別名,用於反解析"),
    url(pattern=r"/abc", handler=Home,kwargs={"company":"OldBoyEdu"},name="home"),
]

if __name__ == '__main__':
    app = web.Application(urls,**settings)
    app.listen(port=8888)
    ioloop.IOLoop.current().start()