我是 python 和网络编程的新手。我正在尝试将包含程序状态条目的数据库行与存储在磁盘中的程序状态同步。但是在数据库 hpartDirs 中,IS_FULL_PROCESSED 列没有得到更新。我启动了 python 解释器,但没有意识到我在这里做错了什么。函数调用 checkIsHpartProcessed(indexFile) 工作正常。
import web
..
urls = (
'/hpart/syncdb','hpartSyncDb'
)
db = web.database(dbn='mysql',\
user=<retracted>,\
pw=<retracted>,\
db='classifier',\
host='localhost')
..
class hpartSyncDb:
def GET(self):
hpartDirs = db.select('hpartDirs')
for hpart in hpartDirs:
indexFile=os.path.join(hpart.PATH,"index.hpart")
print "Updating "+indexFile+"with is hpart processed value"+str(temp) # Added just for debugging purposes
temp=checkIsHpartProcessed(indexFile)
db.update('hpartDirs',where='ID=$id',id=hpart.ID,IS_FULL_PROCESSED=temp)
raise web.seeother('/hpart/showdb')
这是解释器的示例输出
Updating /opt/bs/yourfile.html.hpart/index.hpartwith is hpart processed value1
0.0 (7): UPDATE hpartDirs SET IS_FULL_PROCESSED = '1', id = 1L WHERE ID = <built-in function id>
0L
Updating /opt/bs/pr?sid=2oq.hpart/index.hpartwith is hpart processed value-1
0.0 (8): UPDATE hpartDirs SET IS_FULL_PROCESSED = -1, id = 2L WHERE ID = <built-in function id>
我在这里做错了什么我不明白,请帮忙。