1

私は次のことをします:

from google.appengine.ext import deferred

def send_message(client_id, message):
    logging.info("sending message...")

class MyHandler(webapp.RequestHandler):
    def get(self, field_name):
        ...
        scUpdate = {
                       'val': value,
                       'name': field_name_converted
                   }
        message = simplejson.dumps(scUpdate)                      
        deferred.defer(send_message, client_id, message, _countdown=random.randrange(0, 5, 1))

と取得

PermanentTaskFailure: 'module' object has no attribute 'send_message'

ここで何が問題になっていますか?

更新 問題はそこで説明されているものと同じように見えます-PermanentTaskFailure:'module'オブジェクトには属性'Migrate'がありません-しかし、それを修正する方法がわかりません。

4

1 に答える 1

8

https://developers.google.com/appengine/articles/deferredを参照してください:

据え置きライブラリの制限

  • リクエストハンドラモジュールでメソッドを呼び出すことはできません。

deferred.deferを介して呼び出される関数は、deferred.deferが呼び出されるリクエストハンドラーのように同じモジュール内に存在してはなりません。

于 2012-03-07T09:34:26.413 に答える