Wie zu verwenden .delay () - Methode in django-celery?

Den ich nutzen möchte .Verzögerung zu erreichen, das asynchrone Verhalten. Der Hauptgrund für die Verwendung dieser ist die Beschleunigung meiner Sicht. Mache ich das falsch? Wenn ja, wie soll ich es richtig machen?

Unten ist der Beispiel-code:

View.py

@cache_page(60*60*24)
def my_view(request):
    something ..... .... ....
    a = SomeModel.objects.get(pk=id)
    data = celery_task.delay(a)
    return dumpjson(status='ok', data=data, callback=callback)

Task.py

def celery_task(a):
    res = request.get('http:sample.sample.com/feed/result' params={'abc': 'abc'})
    return {'response': res}

Wenn ich die Antwort von celery_task zeigt es einige guid (1b52f519-64cb-43da-844a-2886bcccb9bc) und der Fehler ist so etwas wie dieses:

<EagerResult: 1b52f519-64cb-43da-844a-2886bcccb9bc> is not JSON serializable

InformationsquelleAutor fakhir hanif | 2014-03-03

Schreibe einen Kommentar