tornado找不到database模块
准备用用tornado重写本站,但发现import tornado.database时出错。
|
1
2
3
4
5
6
7
8
9
10
|
[root@lee ~]# pythonPython 2.7.4 (default, Apr 11 2013, 17:08:33) [GCC 4.4.7 20120313 (Red Hat 4.4.7-3)] on linux2Type "help", "copyright", "credits" or "license" for more information.>>> import tornado.web>>> import tornado.databaseTraceback (most recent call last): File "<stdin>", line 1, in <module>ImportError: No module named database>>> |
网上不少教程明明写的是这个模块,怎么会提示找不到这个模块呢?难道我没有安装MySQLdb的原因?
|
1
2
3
4
5
6
|
[root@lee tornado]# pythonPython 2.7.4 (default, Apr 11 2013, 17:08:33) [GCC 4.4.7 20120313 (Red Hat 4.4.7-3)] on linux2Type "help", "copyright", "credits" or "license" for more information.>>> import MySQLdb>>> |
MySQLdb模块已经装好了,看来不是MySQLdb模块引起的。我又重装了一次tornado,结果还是没有database模块。
Python的模块就是一个py文件,我倒tornado目录去看了看,果然没有database.py这个模块
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
[root@lee ~]# find /usr -name tornado /usr/lib/python2.6/site-packages/tornado-3.0.1-py2.6.egg/tornado/usr/local/lib/python2.7/site-packages/tornado-3.0.1-py2.7.egg/tornado/usr/local/lib/python2.7/site-packages/tornado[root@lee ~]# cd /usr/local/lib/python2.7/site-packages/tornado[root@lee tornado]# lsauth.py escape.pyc __init__.pyc netutil.pyc tcpserver.py web.pycauth.pyc gen.py ioloop.py options.py tcpserver.pyc websocket.pyautoreload.py gen.pyc ioloop.pyc options.pyc template.py websocket.pycautoreload.pyc httpclient.py iostream.py platform template.pyc wsgi.pyca-certificates.crt httpclient.pyc iostream.pyc process.py test wsgi.pycconcurrent.py httpserver.py locale.py process.pyc testing.pyconcurrent.pyc httpserver.pyc locale.pyc simple_httpclient.py testing.pyccurl_httpclient.py httputil.py log.py simple_httpclient.pyc util.pycurl_httpclient.pyc httputil.pyc log.pyc stack_context.py util.pycescape.py __init__.py netutil.py stack_context.pyc web.py[root@lee tornado]# |
于是到tornado官网看了看文档,原来是tornado3.0版本以后废除database模块,但推出了一个类似database的模块torndb,我看了下源码基本就是MySQLdb的简单封装。
下载torndb,https://github.com/bdarnell/torndb
安装:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
[root@lee software]# unzip torndb-master.zip Archive: torndb-master.zipab862d70f293304f3a37527dff549eb6818063f7 creating: torndb-master/ inflating: torndb-master/.gitignore inflating: torndb-master/README.rst creating: torndb-master/doc/ inflating: torndb-master/doc/Makefile inflating: torndb-master/doc/conf.py inflating: torndb-master/doc/index.rst inflating: torndb-master/setup.py inflating: torndb-master/torndb.py inflating: torndb-master/tox.ini [root@lee software]# cd torndb-master[root@lee torndb-master]# lsdoc README.rst setup.py torndb.py tox.ini[root@lee torndb-master]# python setup.py buildrunning buildrunning build_pycreating buildcreating build/libcopying torndb.py -> build/lib[root@lee torndb-master]# python setup.py installrunning installrunning buildrunning build_pyrunning install_libcopying build/lib/torndb.py -> /usr/local/lib/python2.7/site-packagesbyte-compiling /usr/local/lib/python2.7/site-packages/torndb.py to torndb.pycrunning install_egg_infoWriting /usr/local/lib/python2.7/site-packages/torndb-0.1-py2.7.egg-info[root@lee torndb-master]# |
安装好了试试能不能倒入torndb模块
|
1
2
3
4
5
6
|
[root@lee torndb-master]# pythonPython 2.7.4 (default, Apr 11 2013, 17:08:33) [GCC 4.4.7 20120313 (Red Hat 4.4.7-3)] on linux2Type "help", "copyright", "credits" or "license" for more information.>>> import torndb>>> |
OK,搞定。
其实使用torndb与直接使用MySQLdb模块操作数据库都一样,看个人喜好
关于torndb的文档请看这里:http://torndb.readthedocs.org/en/latest/
浙公网安备 33010602011771号