【发布时间】:2013-06-02 15:50:41
【问题描述】:
请帮帮我。 我正在 Python 2.7 + Google Application Engine 上编写我的学生项目。
我有下一页: / - 我有上传文件列表的主页
/delete/file_blob_key - 从数据存储中删除记录的处理程序
在两个处理程序中我都使用下一条语句:
bases = dbModels.kbEntity.all()
在“/”页面上,此语句返回数据存储区中的记录列表
在“/delete/file_blob_key”页面上,此语句返回空列表
什么问题?
处理程序:
#===============================================================================
# Handler to delete file from server by key
#===============================================================================
class DeleteHandler(webapp2.RequestHandler):
def get(self, resource):
base = dbModels.kbEntity.all().filter('kbKey=', resource).fetch(1)[0]
base.delete()
self.redirect('/')
#===============================================================================
#
#===============================================================================
class IndexHandler(webapp2.RequestHandler):
def getAllBasesTable(self):
bases = dbModels.kbEntity.all()
bases.order('-kbUploadDate')
bases = {}
template = JE.get_template('./templates/TPLBasesTable.html')
values = {
'bases': bases
}
return template.render(values)
def get( self ):
self.response.headers['Content-Type'] = 'text/html'
template = JE.get_template('./templates/TPLIndex.html')
values = {
'bases': self.getAllBasesTable()
}
html = template.render( values )
self.response.out.write( html )
【问题讨论】:
-
您必须为两个处理程序显示更多代码,因为如果您在两个处理程序中都有完全相同的东西,这真的没有意义..返回不同的结果,因为第二个是删除东西为什么需要显示所有实体的列表..?
-
我在帖子中添加了处理程序
标签: google-app-engine python-2.7 google-cloud-datastore