2012-01-23 5 views
6

का उपयोग कर Django सीएसएस पृष्ठभूमि छवि मैंने अभी अपना स्टोरेज बैकएंड अमेज़ॅन एस 3 में बदल दिया है, और मुझे एहसास हुआ कि मेरी पृष्ठभूमि मेरी साइट के लिए लोड नहीं हो रही थी। मैंने देखा और महसूस किया कि मेरे सीएसएस में (वास्तव में SASS) मैंने पृष्ठभूमि यूआरएल निर्दिष्ट किया था (static/mysite/images/background.gif)।STangoIC_URL

मुझे आश्चर्य है कि मुझे इस समस्या को कैसे ठीक करना चाहिए। बेशक मैं बस इसे अपने नए स्थिर यूआरएल में बदल सकता हूं, लेकिन यह एक बुरा अभ्यास की तरह लगता है। इसलिए मैंने {{ STATIC_URL }} के साथ {{ STATIC_URL }} के साथ अपनी पृष्ठभूमि छवि को लोड करने का प्रयास किया, लेकिन फिर यह मेरी वास्तविक सीएसएस पर repeat: no-repeat; प्रस्तुत करने से पहले, मेरी पृष्ठभूमि को पहले प्रस्तुत करता है, जिससे सीएसएस लोड होने पर पृष्ठभूमि पूरी स्क्रीन पर दोहराने का कारण बनती है। वैसे भी मुझे अपने दस्तावेज़ों में अपने शैलियों को मिश्रित करना पसंद नहीं है।

तो Django में पृष्ठभूमि छवि के लिए सापेक्ष पथ प्रदान करने का सबसे अच्छा तरीका क्या है? क्या मुझे अपना सीएसएस टेम्पलेट के रूप में स्थापित करना चाहिए, और इसे एक दृश्य के माध्यम से निर्देशित करना चाहिए? यह भी गन्दा लगता है।

या क्या मुझे इसे static_url अज्ञेयवादी बनाने के बारे में भूल जाना चाहिए, और मेरे सीएसएस में बस इतना मुश्किल कोड है?

उत्तर

8

Django compressor!

यह आप सीधे है कि अंततः एक एकल फाइल में जोड़ दिया जाता है अपने टेम्पलेट के अंदर सीएसएस के अंश प्रस्तुत करना या तुम भी Django के टेम्पलेट इंजन और संदर्भ के साथ अपने सीएसएस फ़ाइलों की पार्स सक्षम करने के लिए विकल्प निर्दिष्ट कर सकते कर सकते हैं: http://django_compressor.readthedocs.org/en/latest/settings/#django.conf.settings.COMPRESS_CSS_FILTERS

यह आश्चर्यजनक और परेशानी के लायक है क्योंकि आपको सीएसएस का प्रबंधन करते समय प्रदर्शन के बारे में सोचने की आवश्यकता नहीं है।

+0

वाह! मैं सचमुच _just_ को स्थिर फाइल संपीड़न के लिए देख रहा था, इस सवाल से असंबंधित! बहुत बहुत धन्यवाद! –

+0

@ saul.shanabrook hah! :) यह एक महान परिपक्व पुस्तकालय है। –