Die Sellerie Dokumentation sagt mir, wenn mehrere Aufgaben miteinander verkettet sind, wird das Ergebnis der ersten Aufgabe das erste Argument der nächsten sein. Mein Problem ist, ich kann es nicht zum Laufen bringen, wenn ich eine Aufgabe habe, die mehrere Ergebnisse liefert.Sellerie: Verketten Aufgaben mit mehreren Argumenten
. Beispiel:
@task()
def get_comments(url):
#get the comments and the submission and return them as 2 objects
return comments, submission
@task
def render_template(threadComments, submission):
#render the objects into a html file
#does not return anything
Nun, wenn ich nenne sie in einer Kette wie (get_comments (url) | render_template()) apply_asnc() Python wird eine TypeError: render_template() takes exactly 2 arguments (0 given)
werfen.
Ich kann sehen, dass die Ergebnisse nicht ausgepackt und auf die Argumente angewendet werden. Wenn ich get_comments nur aufrufen, kann ich tun:
result = get_comments(url)
arg1, arg2 = result
und beide Ergebnisse erhalten.
Benutzer, die an einer Lösung für die Frage "Rückmeldung Positionsargumente für die nächste Funktion" interessiert sind, könnten an meiner Antwort http://stackoverflow.com/a/15778196/114917 –