2012-07-13 12 views
9

संभव डुप्लिकेट:
Django view - load template from calling app's dir firstDjango टेम्पलेट का नाम संघर्ष

मैं आवेदनों की एक संख्या के साथ Django परियोजना है। असल में फ़ाइल संरचना पीछा कर रहा है:

myproj/ 
    default/ 
    templates/ 
     index.html (1) 
    app1/ 
    templates/ 
     index.html (2) 
    app2/ 
    templates/ 
     index.html (3) 

मैं उम्मीद सक्रिय आवेदन के टेम्पलेट निर्देशिका जब टेम्पलेट को हल करने को सर्वोच्च प्राथमिकता है। लेकिन असल में मुझे INSTALLED_APPS ऑर्डर के अनुसार पहला टेम्पलेट मिला! यदि मैं स्थापित ऐप्स का ऑर्डर बदल रहा हूं - टेम्पलेट को संगत रूप से बदल दिया गया है।

प्रश्न: क्या वर्तमान एप्लिकेशन से पहले टेम्पलेट प्राप्त करने का कोई तरीका है? टेम्पलेट नाम की विशिष्टता/स्पष्ट निर्देशिका विनिर्देशन इसे प्राप्त करने का एकमात्र तरीका है?

myproj/ 
    app1/ 
    templates/ 
     app1/ 
     index.html 

यह (जैसे django.contrib.admin के रूप में) भेज दिया अनुप्रयोगों के द्वारा किया जाता है और बहुत अच्छी तरह से काम करता है:

+1

आप http://stackoverflow.com/questions/3092865/django-view-load-template-from-calling-apps-dir-first – Rohan

+0

पर देख सकते हैं, धन्यवाद। –

उत्तर

10

सामान्य समाधान जैसे एक और उप-निर्देशिका, अपने एप्लिकेशन के नाम पर में टेम्पलेट्स डाल करने के लिए, है। मैं आम तौर पर प्रोजेक्ट-विशिष्ट फ़ाइलों (जैसे पूरी साइट का सूचकांक) के लिए टेम्पलेट रूट में index.html जैसे सामान्य नामों का उपयोग करता हूं।

+0

वह Django रास्ता है। मैं इसके बारे में भूल गया और मेरा जवाब हटा दिया क्योंकि यह मेरे दिमाग में सही जवाब है। – Jens

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