क्या मॉडल गुण Django में क्वेरी फ़िल्टरिंग को बढ़ा सकते हैं?
Django में ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग की प्रमुख विशेषताओं में से एक परिभाषित करने की क्षमता है आपके मॉडलों के लिए गुण। गुण आपको अतिरिक्त विधियाँ लिखे बिना अपने मॉडलों में कार्यक्षमता जोड़ने की अनुमति देते हैं। वे मॉडल में संग्रहीत डेटा के आधार पर परिकलित मान लौटाकर काम करते हैं।
गुणों के लिए एक सामान्य उपयोग का मामला एक कस्टम विशेषता बनाना है जो मौजूदा फ़ील्ड के संयोजन से प्राप्त होता है। उदाहरण के लिए, कल्पना करें कि आपके पास शीर्षक, लेखक और पेज जैसे क्षेत्रों के साथ एक पुस्तक का प्रतिनिधित्व करने वाला एक मॉडल है। आप पुस्तक की लंबाई लौटाने के लिए एक Book_length() गुण को परिभाषित कर सकते हैं, जिसकी गणना पृष्ठों की संख्या की गणना करके की जाती है।
हालांकि गुण आपके मॉडल की कार्यक्षमता बढ़ाने के लिए एक शक्तिशाली उपकरण हैं, लेकिन उनका उपयोग नहीं किया जा सकता है Django क्वेरीसेट को फ़िल्टर करने के लिए। ऐसा इसलिए है क्योंकि Django के फ़िल्टर SQL उत्पन्न करते हुए डेटाबेस स्तर पर काम करते हैं। पायथन गुणों के आधार पर फ़िल्टर करने के लिए, आपको एक विशिष्ट ऑब्जेक्ट इंस्टेंस को पुनः प्राप्त करना होगा, संपत्ति का मूल्यांकन करने के लिए इसे पायथन में लोड करना होगा, और फिर निर्धारित करना होगा कि यह मानदंडों को पूरा करता है या नहीं। हालाँकि, उस समय, आपने पहले ही विशिष्ट ऑब्जेक्ट को पुनः प्राप्त कर लिया है और इसे मेमोरी में लोड कर दिया है।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3