1. 目录结构
2. index页面
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
这是第{{ post_id }}页的内容
</body>
</html>
3. APP文件
import time
import tornado.web
import tornado.options
from tornado.options import define, options
from tornado.web import RequestHandler
import tornado.httpserver
import tornado.ioloop
define('port', default=8080, help='run port', type=int)
class MainHandler(RequestHandler):
def get(self, post_id):
# 获取url中name属性
self.render('index.html', post_id=post_id)
class Application(tornado.web.Application):
def __init__(self):
handlers = [
# ?P命名一个名字为post_id的组,符合后面的正则规则
(r'/index/(?P<post_id>[0-9]+)', MainHandler),
]
settings = dict(
debug=True,
template_path='template',
static_path='static'
)
super(Application, self).__init__(handlers, **settings)
app = Application()
if __name__ == '__main__':
tornado.options.parse_command_line()
print('监听端口: ', options.port)
server = tornado.httpserver.HTTPServer(app)
server.listen(options.port)
tornado.ioloop.IOLoop.instance().start()
4. 访问页面