多くの人がこの質問をしていることは知っていますが、テンプレート ディレクトリへのパスをハードコーディングしているにもかかわらず、Django にテンプレートを見つけさせることができないようです。
ここにsettings.pyがあります
TEMPLATE_LOADERS = (
'django.template.loaders.filesystem.Loader',
'django.template.loaders.app_directories.Loader',
#django.template.loaders.eggs.Loader',
)
TEMPLATE_DIRS = (
"/Users/full/path/to/marketing_site/templates",
)
これは、views.py ファイルです。
def static (request, feature_page):
# this will get the appropriate feature page template.
template = loader.get_template('features/pricing.html')
c = RequestContext(request,{
})
return HttpResponse(template.render(c))
メイン フォルダー内には、templates フォルダーと app フォルダーがあります。以前はアプリを settings.py と同じフォルダーに配置していましたが、django 1.4 がデフォルトのファイル構造を変更したようです。
私のエラーは次のとおりです。
TemplateDoesNotExist at /features/pricing
Django tried loading these templates, in this order:
Using loader django.template.loaders.filesystem.Loader:
Using loader django.template.loaders.app_directories.Loader:
/Library/Python/2.7/site-packages/django/contrib/auth/templates/feature_pricing.html (File does not exist)
更新:
Web ページのログには、TEMPLATE_DIRS が () としてリストされています。
TEMPLATE_DIRS の settings.py ページに print ステートメントを配置すると、適切に TEMPLATE_DIRS の出力が得られます。