基于Python Tornado的在线问答系统
2021-07-08 14:06
代码下载:http://www.demodashi.com/demo/13926.html
项目介绍:本项目最初是为了模仿StackOverflow的练手项目,实现了部分StackOverflow的功能。
项目说明:推荐使用Linux部署该项目,这样可以优化Tornado的性能。我的环境是Windows加Python3.6.5。
目录结构:
database:MySQL/Redis等异步连接器,数据操作方法。
handlers:Tornado控制器文件
static:静态文件地址
templats:html页面地址
utils:Python实用工具脚本
conf:配置文件
local_conf.bak.py:本地配置文件示例
manage.py:程序启动入口
require:依赖包,使用pip安装
router.py:路由
0:下载压缩包,将项目源文件解压到指定目录。我的目录是C:\Users\zhang\Downloads\tequila-master\tequila-master>
1:在项目根目录创建venv虚拟环境,virtualenv venv --no-site-packages
2:激活虚拟环境 venv\Scripts\activate
3:安装Python包依赖 pip install -r require
4:将local_conf.bak.py文件名修改为local_conf.py,并且编辑local_conf.py文件为如下内容:
# -*- coding: utf-8 -*- import os DOMAIN = ‘http://127.0.0.1:9000‘ DEFAULT_UPLOAD_PATH = os.path.join(os.path.dirname(__file__), ‘pics‘) DATABASE = { ‘default‘: { ‘host‘: ‘localhost‘, ‘port‘: 3306, ‘database‘: ‘tequila_demo‘, ‘user‘: ‘root‘, ‘password‘: ‘你的数据库密码‘, ‘charset‘: ‘utf8‘ } } REDIS = { ‘default‘: { ‘host‘: ‘localhost‘, ‘port‘: 6379, ‘password‘: ‘‘, ‘selected_db‘: 0, } }
5:创建数据库,create database tequila_demo;
6:执行脚本迁移,创建初始化数据。python manage.py migrate
7:查看数据表是否创建成功,并且检查redis是否可用
8:运行项目,python manage.py run,如果您的系统是windows,那将无法使用Tornado的fork进程模式,会遇到下面的错误:
这时不要惊慌,你只需要修改manage.py文件,将server.start(num_process=4)修改为server.start()即可
最后重新运行项目: python manage.py run
9:浏览器访问http://127.0.0.1:9000
以上是部分项目页面截图,如果对于项目有什么问题可以联系我~
代码下载:http://www.demodashi.com/demo/13926.html
注:本文著作权归作者,由demo大师发表,拒绝转载,转载需要作者授权
文章标题:基于Python Tornado的在线问答系统
文章链接:http://soscw.com/index.php/essay/102390.html