मेरी स्थानीय मशीन पाइथन 2.5 और निगेंक्स को उबंटू 8.10 पर चल रही है, जिसमें डैंजो ने नवीनतम विकास ट्रंक से बनाया है।Django TemplateDoesNotExist?
हर यूआरएल मेरा अनुरोध है के लिए, यह फेंकता है:
TemplateDoesNotExist at /appname/path appname/template_name.html Django tried loading these templates, in this order: * Using loader django.template.loaders.filesystem.function: * Using loader django.template.loaders.app_directories.function: TEMPLATE_DIRS ('/usr/lib/python2.5/site-packages/projectname/templates',)
यह इस मामले में /usr/lib/python2.5/site-packages/projectname/templates/appname/template_name.html
की तलाश है? अजीब चीज यह फ़ाइल डिस्क पर मौजूद है। Django इसे क्यों नहीं ढूँढ सकता?
मैं उसी समस्या को बिना किसी समस्या के उबंटू 9.04 पर पाइथन 2.6 के साथ रिमोट सर्वर पर चलाता हूं। अन्य सेटिंग्स एक ही हैं।
क्या मेरी स्थानीय मशीन पर कुछ भी गलत कॉन्फ़िगर किया गया है, या संभवतः ऐसी त्रुटियों के कारण क्या हो सकता है जो मुझे देखना चाहिए?
मेरी settings.py में, मैं निर्दिष्ट किए हैं:
SETTINGS_PATH = os.path.normpath(os.path.dirname(__file__))
# Find templates in the same folder as settings.py.
TEMPLATE_DIRS = (
os.path.join(SETTINGS_PATH, 'templates'),
)
यह निम्न फ़ाइलें
/usr/lib/python2.5/site-packages/projectname/templates/appname1/template1.html /usr/lib/python2.5/site-packages/projectname/templates/appname1/template2.html /usr/lib/python2.5/site-packages/projectname/templates/appname2/template3.html ...
उपरोक्त सभी फ़ाइलें डिस्क पर मौजूद हैं के लिए विचार करना shoule।
हल
अब यह काम करता है के बाद मैंने कोशिश की chown -R www-data:www-data /usr/lib/python2.5/site-packages/projectname/*
यह अजीब है। मुझे इसे काम करने के लिए रिमोट सर्वर पर ऐसा करने की आवश्यकता नहीं है।
क्या आपका TEMPLATE_DIRS वेबसर्वर द्वारा पठनीय है? –
@ जोर्डन, रूट द्वारा पहुंच योग्य TEMPLATE_DIRS पर्याप्त है। यह वही है जो इसे दूरस्थ सर्वर पर कॉन्फ़िगर किया गया है जो काम कर रहा है। – jack