अजवाइन दस्तावेज मुझे बताता है कि यदि कई कार्यों को एक साथ बंधे हुए हैं, तो पहले कार्य का परिणाम अगले का पहला तर्क होगा। मेरी समस्या यह है कि, जब मैं एक ऐसा कार्य करता हूं जो कई परिणाम देता है तो मैं इसे काम नहीं कर सकता।सेलेरी: एकाधिक तर्कों के साथ चेनिंग कार्य
उदाहरण:।
@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
अब, अगर मैं उनकी तरह एक श्रृंखला में फोन (get_comments (यूआरएल) | render_template()) apply_asnc() अजगर एक TypeError: render_template() takes exactly 2 arguments (0 given)
फेंक देते हैं।
मैं देख सकता हूं कि परिणाम अनचाहे नहीं हैं और तर्कों पर लागू होते हैं। अगर मैं केवल get_comments को कॉल करता हूं, तो मैं कर सकता हूं:
result = get_comments(url)
arg1, arg2 = result
और दोनों परिणाम प्राप्त करें।
"अगले फ़ंक्शन के लिए वापसी स्थितित्मक तर्क" के समाधान में रुचि रखने वाले उपयोगकर्ता मेरे उत्तर में दिलचस्पी ले सकते हैं http://stackoverflow.com/a/15778196/114917 –