In Django's multi-table inheritance, can the upload_to argument be overridden? -
निम्न कोड के लिए:
वर्ग छवि (models.Model): alt_name = मॉडल क्लास स्नैपशॉट (छवि): सोर्स = मॉडल। छवि फ़िल्ट (अधिकतम_ लैंब = 1024, अपलोड_ टू = 'बटन')। = Models.ImageField (max_length = 1024, upload_to = 'स्नैपशॉट्स') वर्ग बैनर (छवि): स्रोत = मॉडल। छवि फ़िल्ट (अधिकतम_लाँग = 1024, अपलोड_to = 'बैनर')
इसमें ऊपर के मामलों में, मैं अपने प्रत्येक अपलोड फ़ोल्डर को अपने अपलोड फ़ोल्डर में अपलोड करना चाहता हूं। उदाहरण के लिए, बैनर बैनर
नामक एक फ़ोल्डर के नीचे जाएंगे और स्नैपशॉट स्नैपशॉट
के अंतर्गत जाएंगे। उपर्युक्त कार्यों के अनुसार अपेक्षित, लेकिन मैं प्रत्येक उप-कक्षा के लिए ImageField दोहरा रहा हूँ। क्या मेरे लक्ष्य को प्राप्त करने का एकमात्र तरीका है या क्या एक ड्रयर पद्धति है?
तर्क एक है कॉल करने योग्य है, इसलिए आप किसी फ़ंक्शन में पास कर सकते हैं। आप इस तरह से कुछ कर सकते हैं:
आयात ओएस डीआर def_path (उदाहरण, फ़ाइल नाम): वापसी os.path.join (उदाहरण .__ वर्ग __.__ नाम__ + 'एस', फ़ाइल नाम) वर्ग छवि (मॉडल । मॉडेल): alt_name = models.CharField (max_length = 200) url = models.CharField (max_length = 255, रिक्त = सत्य) स्रोत = मॉडल। छवि फ़िल्ड (max_length = 1024, upload_to = upload_path)
Comments
Post a Comment