2010-01-05 10 views
17

मैंने देखा कि Django मॉडल में, class Meta है जो मॉडल के बारे में कुछ अतिरिक्त परिभाषाएं बनाता है।Django की मेटा एक पुरानी शैली की कक्षा क्यों है?

मेरा सवाल है, यह पुराने शैली की कक्षा के रूप में क्यों किया जाता है? (यानी object उपclassing नहीं है?) इसके लिए कोई कारण है या यह सिर्फ एक कस्टम है? क्या मैं इसे अपनी परियोजनाओं में एक नई शैली के वर्ग के रूप में कर सकता हूं?

उत्तर

15

मेरा मानना ​​है कि इतिहास के साथ कोई वास्तविक कारण नहीं है, क्योंकि पाइथन 2.2 के बाद से नई शैली के वर्ग मौजूद हैं) और न केवल आप एक नई शैली के वर्ग का उपयोग करना चुन सकते हैं, लेकिन यह शायद एक अच्छा होगा ऐसा करने के लिए विचार (सभी सामान्य कारणों से)।

8

चूंकि क्लास मेटा कभी भी सरल नामस्थान कंटेनर के अलावा कुछ भी नहीं है, ऑब्जेक्ट को उपclassing के लिए शून्य लाभ है; टाइप करने के लिए सिर्फ आठ अतिरिक्त अक्षर। ऐसा करने के लिए कुछ भी चोट नहीं पहुंचाएगा, हालांकि आपको ऐसा लगता है।

संबंधित मुद्दे