web.py笔记db处理 坑爹_test=True
http://webpy.org/cookbook/Insert.zh-cn
http://webpy.org/cookbook/update.zh-cn
?
db.insert 和db.update处理?
看见里面有个_test选项
貌似是查看sql语句的
于是加入 _test= True,试验
结果。。。。
必须要像api中http://webpy.org/docs/0.3/api一样如此执行,才能打出sql语句来,还以为是执行db.upate的时候就会打出来呢
>>> db = DB(None, {})>>> name = 'Joseph'>>> q = db.update('foo', where='name = $name', name='bob', age=2,... created=SQLLiteral('NOW()'), vars=locals(), _test=True)>>> q<sql: "UPDATE foo SET age = 2, name = 'bob', created = NOW() WHERE name = 'Joseph'">>>> q.query()'UPDATE foo SET age = %s, name = %s, created = NOW() WHERE name = %s'>>> q.values()[2, 'bob', 'Joseph']?
最坑爹的是
经过屡次试验,才发现,如果_test=True
update,insert的结果不会保存的
即使马上select,结果也是如此
cookbook里面怎么没有说具体一点呢?调试了半天才发现这个问题
哎,cookbook坑爹啊