我正在尝试删除数据存储区Google应用引擎中的特定行。条目列表显示在网页中,用户单击按钮删除特定条目,这应该反映数据存储。从jinja模板中,当用户点击删除按钮时,我将传递条目的ID。下面的python代码应该处理数据存储区中的删除操作。
def post(self,id):
q = db.GqlQuery('SELECT * FROM Input WHERE ID=:1', id)
for msg in q:
db.delete(msg) # msg.delete() #I tried these both stil not working
它没有向我显示任何错误消息并显示HTTP 200消息。但是,当我检查数据存储区时,enrty不会被删除:( 请帮我解决这个问题。
答案 0 :(得分:1)
我猜测正在发生两件事之一:一件是id
不是你所期望的,而且查询不是返回实体(一些日志记录会将其说出来)。另一个是你看到了“最终一致性”的影响,详细描述了here。对此的测试是,您是否仍然看到实体在经过一段时间后。第二个问题的解决方法是从事务中删除实体。