2011-07-25 10 views
8

मैंने आधिकारिक डॉक्टर और कुछ पोस्ट के माध्यम से उनके बारे में कुछ पढ़ा है, लेकिन मैं अभी भी उलझन में हूं। जहां तक ​​मैं अब देख सकता हूं, MEDIA_ROOT उपयोगकर्ता अपलोड की गई छवियों और फ़ाइलों के लिए है और जेएस, सीएसएस, आदि के लिए STATIC_ROOT है। MEDIA_URL के लिए, क्या यह छवियों को पुनर्प्राप्त करने के लिए है? और जेएस और सीएसएस को जोड़ने के लिए STATIC_URL है?MEDIA_ROOT, MEDIA_URL, STATIC_ROOT, STATIC_URL और ADMIN_MEDIA_PREFIX की दस्तावेजी परिभाषा क्या है?

यदि प्रत्येक के लिए उदाहरण प्रदान किए जाते हैं तो मैं इसकी बहुत सराहना करता हूं।

+0

आपने बेहतर शीर्षक दिया था :( –

उत्तर

11

MEDIA_ROOT और STATIC_ROOT उदाहरण के लिए, स्थानीय निर्देशिका फ़ाइलों में रहते हैं:

MEDIA_ROOT = '/home/CDBean/mydjangoproject/media/' # notice the trailing slash 
STATIC_ROOT = '/home/CDBean/mydjangoproject/static/' 

MEDIA_URL और STATIC_URL उन फ़ोल्डर के सार्वजनिक रूप से पहुंच योग्य यूआरएल है। इसका अर्थ यह है कि जब आप अपनी Django प्रोजेक्ट को तैनात करते हैं, तो आपको अपने वेब सर्वर को उन फ़ोल्डरों को प्रकाशित करने के लिए कहना होगा जिन्हें आप यहां निर्दिष्ट करते हैं।

MEDIA_URL = 'http://media.example.com/' # trailing slashes here, too 
STATIC_URL = 'http://static.example.com/' 

फिर आप उन URL (यह मानते हुए आप django.core.context_processors.media और django.core.context_processors.static TEMPLATE_CONTEXT_PROCESSORS को जोड़ा गया settings.py में टपल) {{MEDIA_URL}} के माध्यम से अपने टेम्पलेट्स में और उपयोग कर सकते हैं {{STATIC_URL}}। दो उदाहरण:

<link href="{{STATIC_URL}}css/main.css" media="screen" rel="stylesheet" type="text/css" /> 
<img src="{{MEDIA_URL}}random.jpg"/> 

अब, कब उपयोग करें? असल में आप सही हैं, लेकिन मैं https://docs.djangoproject.com/en/dev/howto/static-files/ पढ़ने की दृढ़ता से अनुशंसा करता हूं।

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