【发布时间】:2013-09-23 14:58:36
【问题描述】:
我正在使用 AppEngine 编写我的第一个“严肃”应用程序,但在任务队列方面遇到了一些问题。
我已阅读并复制了 appengine 文档中给出的示例代码。
当我尝试将任务添加到自定义队列时,它似乎对我不起作用,因为它适用于 others:
我做的是:
from google.appengine.api import taskqueue
def EnterQueueHandler(AppHandler):
def get(self):
#some code
def post(self):
key = self.request.get("value")
task = Task(url='/queue', params={'key':key})
task.add("testqueue")
self.redirect("/enterqueue")
然后我为“/queue”设置了一个处理程序。
问题是这会引发以下错误:
NameError:未定义全局名称“任务”
这是为什么呢?在我看来,我缺少一些基本的东西,但我不知道是什么。它在docs 中说任务类由任务队列模块提供。
到目前为止,我发现如果我将上面代码中与任务相关的两个行替换为以下内容,它会起作用:
taskqueue.add(queue_name="testqueue", url="/queue", params={"key":key})
但我想了解为什么其他方法仍然不起作用。如果有人可以在这里帮助我,那就太好了。
【问题讨论】:
-
用
taskqueue.Task替换Task -
哇,谢谢!那真的很快!这确实是一些基本的东西......我怎样才能将您的评论标记为解决方案?
-
很高兴它有帮助。我回答了你的问题。现在,您可以将答案标记为已接受。
标签: python google-app-engine task-queue