Bunun Django öğreticisinde olmadığını biliyorum ve üzerlerinde utanç duyuyorsunuz, ancak yol değişkenleriniz için göreli yollar oluşturmak daha iyidir. Öyle gibi ayarlayabilirsiniz:
import os
PROJECT_PATH = os.path.realpath(os.path.dirname(__file__))
...
MEDIA_ROOT = PROJECT_PATH + '/media/'
TEMPLATE_DIRS = (
PROJECT_PATH + '/templates/',
)
Bu şekilde size Django projesini taşıyabilirsiniz ve yol kökleri otomatik olarak güncellenir. Bu, üretim sunucunuzu oluştururken kullanışlıdır.
İkincisi, TEMPLATE_DIRS yolunuzdan şüphelenilen bir şey var. Şablon dizininizin kökü işaret etmelidir. Ayrıca, /
numaralı bir sonda da bitmelidir.
Burada sadece .../admin/
dizininin şablon kökünüz olmadığını tahmin edeceğim. Eğer hala mutlak yollar yazmak istiyorsanız, admin şablon dizini referansını çıkarmalısınız. Bunun üzerine
TEMPLATE_DIRS = (
'C:/django-project/myapp/mytemplates/'
)
varsayılan olarak şablon yükleyiciler yinelemeli şablon dosyalarını bulmak için uygulama dizinlere geçiş için kurulması gerektiğini, söyleniyor.
TEMPLATE_LOADERS = (
'django.template.loaders.filesystem.load_template_source',
'django.template.loaders.app_directories.load_template_source',
# 'django.template.loaders.eggs.load_template_source',
)
Özellikle bir şeyin üzerine yazmak istemiyorsanız, yönetici şablonlarını kopyalamanız gerekmez.
Henüz çalıştırmadıysanız bir syncdb çalıştırmanız gerekecek. Ayrıca, çalışma sunucusu aracılığıyla django'yu barındırıyorsanız, medya dosyalarınızı statik olarak sunuculamanız gerekir.
sayesinde göreli yolu yaptım TEMPLATE_DIRS sonundaki "/ admin" çıkarmadan sürü. – shaytac
Bu öneri, şablonlar dizinini proje klasörüne yerleştirir. Daha iyi bir organizasyon için, bunun yerine bir uygulamanın klasörüne koymak daha mantıklı mı? –
Bu cevap için alkış! –