Django Academy · पाठ

all(), get() और filter()

Objects प्राप्त करने के मुख्य तरीके

पाठ 1, कुल 4 में से13 चरण

all(), get() और filter(), CoddyKit पर Django Academy का एक निःशुल्क पाठ है। यह 4 में से 1वाँ पाठ है। इस अध्ययन पथ के 3 तक कोई भी पाठ पूरा पढ़ना निःशुल्क है — इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ व्यावहारिक अभ्यास भी उपलब्ध कराता है। यह Django Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Django Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

मैनेजर से परिचय

हर मॉडल आपको एक निःशुल्क objects मैनेजर देता है। यह डेटाबेस तक पहुँचने का मुख्य द्वार है और आपके द्वारा लिखी जाने वाली हर क्वेरी यहीं से शुरू होती है। 🚪

Book.objects

सब कुछ प्राप्त करें

तालिका की हर पंक्ति माँगने के लिए all() कॉल करें। आपको एक QuerySet मिलता है, जिस पर आप लूप चला सकते हैं, उसकी गिनती कर सकते हैं या उसे और सीमित कर सकते हैं।

books = Book.objects.all()

QuerySet सूची नहीं है

QuerySet सूची जैसा दिखता है, लेकिन यह आलसी होता है। Django डेटाबेस तक तब तक नहीं पहुँचता जब तक आप परिणामों का वास्तव में उपयोग नहीं करते।

ठीक एक प्राप्त करें

जब आपको एक ही मिलती-जुलती पंक्ति की अपेक्षा हो, तब get() का उपयोग करें—जैसे प्राथमिक कुंजी से मिला कोई एक रिकॉर्ड।

book = Book.objects.get(pk=1)

जब get() विफल हो

get() सख़्त होता है। यदि कुछ भी मेल न खाए तो यह DoesNotExist उत्पन्न करता है, इसलिए इसका उपयोग तभी करें जब आपको यकीन हो कि एक पंक्ति मौजूद है।

Book.objects.get(pk=999)

बहुत अधिक मेल

यदि get() को एक से अधिक पंक्तियाँ मिलती हैं, तो यह MultipleObjectsReturned उत्पन्न करता है। इसका अर्थ सचमुच केवल एक और सिर्फ़ एक होता है।

कुछ पंक्तियों के लिए फ़िल्टर करें

जब किसी शर्त से मेल खाने वाली पंक्तियाँ चाहिए हों, तब filter() का उपयोग करें। केवल एक पंक्ति मेल खाने पर भी यह QuerySet लौटाता है।

Book.objects.filter(published=True)

Filter शून्य या अधिक परिणाम लौटाता है

get() के विपरीत, filter() को कुछ भी मेल न खाने पर कभी त्रुटि नहीं होती। इसके बजाय आपको एक खाली QuerySet मिलता है।

Book.objects.filter(author="Nobody")

कई शर्तें

filter() को कई कीवर्ड तर्क देने पर Django उन्हें AND से जोड़ता है। हर शर्त का सही होना आवश्यक है।

Book.objects.filter(published=True, year=2024)

एक नज़र में get और filter

एक निश्चित ऑब्जेक्ट के लिए get() और संग्रह के लिए filter() का उपयोग करें। यह एक चुनाव शुरुआती क्वेरी की अधिकांश गड़बड़ियों से बचाता है।

अपने फ़िल्टर शृंखलाबद्ध करें

क्योंकि filter() एक QuerySet लौटाता है, आप डेटाबेस तक पहुँचने से पहले परिणामों को चरण-दर-चरण सीमित करने के लिए कॉल को chain कर सकते हैं।

Book.objects.filter(published=True).filter(year=2024)

त्वरित जाँच

आपको एक पुस्तक की अपेक्षा है, लेकिन कोई मेल नहीं मिलता। कौन-सी कॉल त्रुटि उत्पन्न करती है?

पुनरावलोकन

बहुत अच्छा! all() सब कुछ प्राप्त करता है, get() एक सटीक पंक्ति लाता है और filter() ऐसा उपसमुच्चय लौटाता है जिसे आप शृंखलाबद्ध कर सकते हैं। 🎉

शुरुआत निःशुल्क

एआई शिक्षक के साथ Python सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
30
पाठ
120

अक्सर पूछे जाने वाले प्रश्न

क्या “all(), get() और filter()” पाठ निःशुल्क है?

हाँ — Django Academy अध्ययन पथ के 3 तक कोई भी पाठ, जिसमें “all(), get() और filter()” भी शामिल है, यहाँ वेब पर पूरा पढ़ना निःशुल्क है। इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ इंटरैक्टिव अभ्यास भी उपलब्ध कराता है। Django Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

“all(), get() और filter()” में मैं क्या सीखूँगा?

Objects प्राप्त करने के मुख्य तरीके आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Django Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या Django Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Django Academy शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 1वाँ पाठ है।

“all(), get() और filter()” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस Django Academy पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर Django Academy पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. all(), get() और filter()
  2. Field Lookups और exclude()
  3. order_by, Slicing और Lazy Evaluation
  4. values, values_list और count
← Django Academy पर वापस जाएँ