码迷,mamicode.com
首页 > 其他好文 > 详细

【从0開始Tornado建站】整体设计

时间:2017-04-21 23:14:39      阅读:174      评论:0      收藏:0      [点我收藏+]

标签:details   com   sql   device   log   reg   域名   title   meta   

        Tornado是一个非堵塞的webserver,也是python的web框架中很优秀的一款。网上关于django的tutorial许多并且具体,关于tornado的使用就很少了。我想以我从0開始的方式一步一步用这个优秀的tornado框架建一个小站点。一方面加深自己的理解。还有一方面接受大家的建议和批评。更加进步~我注冊了个域名:http://www.ustchacker.com,因为server在学校里面。外网訪问不了,等功能完好后再挂到外网去。

        我想建的是一个普通的站点,有登录、注冊、发表文章、发表评论、群聊等,还有的功能之后再完好,如今的这些功能以后还要改进。

代码例如以下:

import os
import tornado.web
import tornado.ioloop
from handlers import *

handlers=[
		(r‘/‘,indexHandler),
		(r‘/member‘,memberHandler),
		(r‘/chat/(\d+)‘,chatHandler),
		(r‘/register‘,registerHandler),
		(r‘/logout‘,logoutHandler),
		(r‘/post‘,postHandler),
		(r‘/user/(\w+)‘,userHandler),
		(r‘/blog/(\d+)‘,blogHandler),
		(r‘/comment‘,commentHandler),
		]
settings={
		‘static_path‘:os.path.join(os.path.dirname(__file__),‘static‘),
		‘template_path‘:os.path.join(os.path.dirname(__file__),‘template‘),
		}

app=tornado.web.Application(handlers,**settings)
app.listen(8888)
tornado.ioloop.IOLoop.instance().start()

        / 相应首页;/member相应注冊的成员列表;/chat/(\d+) 相应群聊的网页,\d+表示页数。由于群聊主题比較多加个分页比較好;/register相应注冊。/logout相应登出;/post相应发表文章。/user/(\w+)相应每一个注冊用户的主页;/blog/(\d+)相应每一篇文章;/comment是发表评论用的。

        在template文件夹下分别创建对应html文件:

blog.html  index.html  member.html  register.html
chat.html  main.html   post.html    user.html

        还须要一个数据库,mongodb非常好用。可是出于方便简单考量,对于小站还是用sqlite3就OK了哈~对于数据库有非常多ORM。眼下小站功能简单,我就自己封装一下就好了。

        前端框架使用bootstrap,在主模版main.html中例如以下:

<meta charset=‘utf-8‘>
<html>
	<head>
		<title>USTC Hackers‘ Club</title>
		<meta name=‘viewport‘ content=‘width=device-width,initial-scale=1.0‘>
		<link href=‘/static/bootstrap.css‘ rel=‘stylesheet‘ type=‘text/css‘>
		<script src=‘/static/jquery-2.1.1.js‘></script>
		<script src=‘/static/bootstrap.js‘></script>
	</head>
	<body>
		<header>
		{%block header%}
		{%end%}
		</header>
		<content>
		{%block content%}
		{%end%}
		</content>
		<footer>
		{%block footer%}
		{%end%}
		</footer>
	</body>
</html>

要加上bootstrap.css和bootstrap.js,因为bootstrap.js依赖jquery,因此jquery-2.1.1.js也是须要加进来的。之后会通过接下来的几篇文章不断完好和添加小站功能,并在过程中展现tornado的设计之美。

转载请注明:转自http://blog.csdn.net/littlethunder/article/details/25532601

【从0開始Tornado建站】整体设计

标签:details   com   sql   device   log   reg   域名   title   meta   

原文地址:http://www.cnblogs.com/tlnshuju/p/6746110.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!