调用torndb的connection对象的connection.delete, 但是不知道怎么回事就报错说找不到这个属性。
问题:‘XXXX' object has no attribute ‘xxxx’
解决方法:
1. 先查看这个对象的所有属性:
在命令行python环境下
>>> import torndb
>>> db = torndb.Connection('121.XXX.XXX','dbname',"root", "password")
>>> dir(db)
['__class__', '__del__', '__delattr__', '__dict__', '__doc__', '__format__', '__getattribute__', '__hash__', '__init__', '__module__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', '_cursor', '_db', '_db_args', '_ensure_connected', '_execute', '_last_use_time', 'close', 'database', 'execute', 'execute_lastrowid', 'execute_rowcount', 'executemany', 'executemany_lastrowid', 'executemany_rowcount', 'get', 'host', 'insert', 'insertmany', 'iter', 'max_idle_time', 'query', 'reconnect', 'socket', 'update', 'updatemany']
这样就可以看到Connection对象的所有属性。
我发现这里面确实没有delete这个属性。
2. 我又查看了下我的tornado和torndb的版本
还是在python环境下
>>> import tornado
>>> tornado.version
'3.1'
import torndb
torndb.version
'0.3'
没啥不正常的
3. 最后我把别的服务器上的,有delete属性的 torndb.py拷到了我的/usr/local/lib/python2.7/dist-packages 就好了