当我在生产服务器上部署我的应用程序时,我在使用最新的 tornadoweb 分支时遇到了一种奇怪的行为。
我对代码进行了多次测试,当我在笔记本电脑(Archlinux)上使用 python 2.6.3 和 MySQLdb 1.2.3b2 对其进行测试时,它可以完全正常工作。
一旦我使用 python 2.6.2、MySQLdb 1.2.3.c1(已经测试过 1.2.1 版本)在我的生产服务器(Ubuntu x64)上部署并调用该页面,它就会引发此错误:
Traceback (most recent call last):
File "/usr/local/lib/python2.6/dist-packages/tornado/web.py", line
688, in _execute
getattr(self, self.request.method.lower())(*args, **kwargs)
File "/var/www/app.py", line 122, in get
self.store_db('cc',test)
File "/var/www/app.py", line 82, in store_db
self.db.execute(query)
File "/usr/local/lib/python2.6/dist-packages/tornado/database.py",
line 132, in execute
self._execute(cursor, query, parameters)
AttributeError: 'Connection' object has no attribute '_execute'
奇怪的行为也是在我的笔记本电脑上测试本机演示(称为博客)它工作正常,但是一旦我将它部署到生产中,它就会停止使用上面列出的保存问题。
我必须添加db.get
/db.query
函数工作正常。