2011-12-13 14 views
5

मेरे पास charset, google-site-सत्यापन, स्टाइलशीट्स, जेएस के लिए साइटवाइड टैग के साथ base.html टेम्पलेट है .... मुझे पृष्ठ विशिष्ट शीर्षक टैग के लिए ब्लॉक सेट करने की भी आवश्यकता है और मेटा विवरण।<head> सामग्री के Django टेम्पलेट विरासत के लिए उचित विधि

मुझे आश्चर्य है, क्या मुझे अपने बेस.html में एक {% ब्लॉक हेड%} स्थापित करना चाहिए और उस ब्लॉक में मेरे विरासत टेम्पलेट मिश्रण टैग में, या क्या मुझे विशिष्ट ब्लॉक जैसे {% ब्लॉक मेटा%} सेट करना चाहिए और {% ब्लॉक शीर्षक%} ताकि टैग्स उनके उचित स्थानों पर दिखाई दे जब Django HTML पर प्रस्तुत करता है।

क्या यह समझ में आता है? यदि मैं एक {% ब्लॉक हेड%} में मिश्रित सभी टैग के साथ स्रोत देखता हूं, तो चीजें क्रम से थोड़ी दूर होती हैं, लेकिन यदि मैं प्रत्येक टैग के लिए विशिष्ट ब्लॉक जोड़ता हूं तो वे अधिक क्रमबद्ध हैं ...?

+0

चाहते हैं के लिए पूरी बात के चारों ओर एक सिर ब्लॉक मैं यह क्या आप आम तौर पर लगता है कि तुम में ओवरराइड करने के लिए की आवश्यकता होगी पर निर्भर करता है लगता है अन्य टेम्पलेट्स। – second

उत्तर

5

मेरे पास आमतौर पर तीन ब्लॉक होते हैं। उन तीन सीएसएस के लिए एक ब्लॉक :-)

  • पिछले 1.5 साल में सभी मेरे और मेरे सहकर्मी की जरूरतों को कवर किया है।

  • जावास्क्रिप्ट के लिए एक ब्लॉक।

  • "हेड-एक्स्ट्रा" नामक एक ब्लॉक। प्रायः आप पृष्ठ-दर-पृष्ठ आधार पर कुछ विशेष करना चाहते हैं जैसे कि एक लिंक तत्व जोड़ना जो आपके आरएसएस फ़ीड पर इंगित करता है। या कुछ इनलाइन जावास्क्रिप्ट स्निपेट। इस ब्लॉक के साथ, आप इन कोने के मामलों को स्पष्ट तरीके से अनुमति देते हैं।

टेम्पलेट्स कि आधार टेम्पलेट का विस्तार में, आप सीएसएस और जावास्क्रिप्ट ब्लॉकों में {{ super }} का उपयोग करें "माता पिता के" सूची प्राप्त और अपने खुद के साथ यह विस्तार करने के लिए कर सकते हैं।

मैं भी उन कुछ मामलों में जहां आप सिर्फ सिर में सब कुछ ओवरराइड करने के लिए :-)

+0

मुझे लगता है कि यह अत्यधिक टेम्पलेट ब्लॉक या झुका हुआ हेड टैग के बीच टॉस-अप है - क्या किसी दूसरे को पसंद करने का कोई कारण है? – shipwreck

+1

आदेश बहुत महत्वपूर्ण नहीं है। यह * मेरे सीएसएस और जावास्क्रिप्ट के लिए है, हालांकि, जैसा कि मैं उन्हें एक फ़ाइल में फ्लाई पर गठबंधन करने के लिए एक django-compressor टैग में लपेटता हूं। उस तकनीकी कारण के अलावा, मैं केवल गैर-अत्यधिक ब्लॉक की संख्या रखता हूं। ब्राउज़र हेड टैग के क्रम को ध्यान में रखता नहीं है, लेकिन आप स्वयं टेम्पलेट स्वच्छता से बहुत लाभ कमाते हैं। –

+1

आपके समय के लिए धन्यवाद Reinout, और {{super}} और django-compressor का उल्लेख करने के लिए धन्यवाद - मैं जांच करूँगा – shipwreck

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