मैं स्टैक ओवरफ्लो पर इस सिंटैक्स में आता हूं
from itertools import chain
result_list = list(chain(page_list, article_list, post_list))
मुझे इस तरह कुछ के साथ QuerySets का एक समूह जोड़ना होगा:
prjExpList = list(chain(lvl for lvl in prjlvl))
prjEnvList = list(chain(env for env in prjEnv))
यह मुझे त्रुटि देता है
AttributeError: 'QuerySet' object has no attribute '_meta'
मेरा लक्ष्य एक सूची prjlvl
और prjEnv
के अंदर संग्रहीत QuerySets का एक समूह जोड़ना है मैं उसको कैसे करू?
2 जवाब
प्रयत्न:
prjExpList = list(chain.from_iterable(prjlvl))
ध्यान दें कि itertools.chain()
पुनरावृत्तियों की एक *args
सूची लेता है, और यह कि आप chain.from_iterable()
वर्ग विधि से समान अनपैकिंग व्यवहार प्राप्त कर सकते हैं।
देखें: https://docs.python.org/2/library/ itertools.html#itertools.chain
क्या एक ही मॉडल के QuerySets हैं? आप बस कर सकते हैं
combined_queryset = queryset_1 | queryset_2 | queryset_3
उन्हें एक साथ एक क्वेरीसेट में श्रृंखलाबद्ध करने के लिए। इसका मतलब है कि आप अभी भी ओआरएम में क्वेरीसेट के साथ चीजें कर सकते हैं, जो एक बड़ी मदद है।
संबंधित सवाल
नए सवाल
django
Django एक ओपन-सोर्स सर्वर-साइड वेब एप्लीकेशन फ्रेमवर्क है जिसे पायथन में लिखा गया है। यह कम कोड, विशेष-अतिरेक पर विशेष ध्यान देने और निहित से अधिक स्पष्ट होने के साथ जटिल डेटा-संचालित वेबसाइटों और वेब एप्लिकेशन बनाने के लिए आवश्यक प्रयास को कम करने के लिए डिज़ाइन किया गया है।