trondb 返回值简单处理

trondb在处理数据库update部分后,因为没有返回值,所以报错如下。
File “/usr/local/lib/python2.7/site-packages/torndb.py”, line 137, in query
column_names = [d[0] for d in cursor.description]
TypeError: ‘NoneType’ object is not iterable

我的原则是不修改框架内容,将来框架升级了此问题可能忘了修改,如果不升级,框架有了漏洞不升级也不现实。所以还是修改自己代码比较现实。
直接在提交数据后用try屏蔽,然后在用select进行一次查询。

def init_pass(user, passwd):
    try:
        idb.query('UPDATE user SET passwd=\'%s\' where user=\'%s\'' % (passwd, user))
    except:
        pass
    _v = odb.query('SELECT count(*) as count FROM user WHERE passwd=\'%s\' and user=\'%s\'' % (passwd, user))
    if int(_v[0]['count']) == 1:
        _get = 'OK'
    else:
        _get = 'ERROR'
    return _get

发表评论

电子邮件地址不会被公开。 必填项已用*标注