django.template.loaders.app_directories.Loader kann die Vorlagendatei nicht finden

8

Die Vorlagendatei wird im App-Verzeichnis gespeichert, löst aber beim Rendern die Ausnahme TemplateResNotExist aus:

Template-loader postmortem wie folgt:

Django hat versucht, diese Vorlagen in dieser Reihenfolge zu laden:

%Vor%

Ich frage mich, warum es aussieht:

%Vor%

anstatt:

%Vor%

Letzteres existiert tatsächlich

    
vts 17.06.2013, 06:24
quelle

3 Antworten

6

$PROJECT/apps/myapp/templates/search.html . Das ist der Pfad, nach dem es suchen wird, wie das Dokument sagt .

django.template.loaders.app_directories.Loader sucht nach einem templates -Verzeichnis in allen INSTALLED_APPS in der Reihenfolge.

    
Babu 17.06.2013, 06:49
quelle
3

django.template.loaders.filesystem.load_template_source : Dieser Loader lädt Vorlagen aus dem Dateisystem gemäß TEMPLATE_DIRS. Es ist standardmäßig aktiviert.

django.template.loaders.app_directories.load_template_source : Dieser Loader lädt Vorlagen aus Django-Anwendungen auf dem Dateisystem. Für jede Anwendung in INSTALLED_APPS sucht der Loader nach einem Vorlagenunterverzeichnis. Wenn das Verzeichnis existiert, sucht Django nach Vorlagen.

Dies bedeutet, dass Sie Vorlagen mit Ihren individuellen Anwendungen speichern können, um die Verteilung von Django-Anwendungen mit Standardvorlagen zu vereinfachen. Wenn INSTALLED_APPS beispielsweise ('myproject.polls', 'myproject.music') enthält, sucht get_template ('foo.html') nach Vorlagen in dieser Reihenfolge:

  
%Vor%   

Beachten Sie, dass der Loader beim ersten Import eine Optimierung durchführt: Er speichert eine Liste der INSTALLED_APPS-Pakete im Cache, die ein templates-Unterverzeichnis haben.

Dieser Loader ist standardmäßig aktiviert.

    
GrvTyagi 11.02.2015 07:58
quelle
-3

Fügen Sie sie zu Ihrer Einstellungsdatei hinzu.

%Vor%     
cem- 17.06.2013 06:41
quelle

Tags und Links