2017-01-04 2 views
0

Ich habe eine Adresse für die DIRS in TEMPLATES Einstellung in meinem Projekt settings.py Datei und auch ich ändern APP_DIRS zu False.Wie ändert man Admin-Vorlagen Verzeichnisordner

Jetzt werden alle Vorlagen ausgeführt, aber wenn ich zu localhost:8000/admin gehe, erzeugt es einen Fehler, der besagt, dass "Vorlage vorhanden ist".

TemplateDoesNotExist bei/admin/

admin/index.html

i APP_DIRS wahr sein möchte nicht. Wie kann ich dieses Problem lösen?

ist dies die Einstellungen

TEMPLATES = [ 
    { 
     'BACKEND': 'django.template.backends.django.DjangoTemplates', 
     'DIRS': [ 
      os.path.join(BASE_DIR, 'templates'), 
     ], 
     'APP_DIRS': False, 
     'OPTIONS': { 
      'context_processors': [ 
       'django.template.context_processors.debug', 
       'django.template.context_processors.request', 
       'django.contrib.auth.context_processors.auth', 
       'django.contrib.messages.context_processors.messages', 
      ], 
     }, 
    }, 
] 
+0

Können Sie die Einrückung sagen, zu tun 'APP_DIRS = false'? – itzMEonTV

Antwort

1

Wenn Sie APPS_DIR nicht wollen, wahr zu sein, copy templates of admin app to your template directory. Wenn Sie APP_DIR auf True setzen, sucht django in jedem Programm nach einem Verzeichnis namens templates und lädt, falls es gefunden wird, die angegebenen Vorlagen aus diesem Verzeichnis. Else django sucht nach einem Verzeichnis mit dem gleichen Namen wie die App im globalen Vorlagenverzeichnis, wenn gefundene Vorlage angezeigt wird.

In Ihrem Fall ist APP_DIR auf False gesetzt und es gibt kein Verzeichnis namens admin im globalen Vorlagenordner. Kopieren Sie also das Vorlagenverzeichnis von django/contrib/admin/Ihrer virtuellen Umgebung und platzieren Sie es in Ihrem globalen Vorlagenverzeichnis. Ich nehme an, Ihr globales Vorlagenverzeichnis befindet sich im Projektverzeichnis selbst.

os.path.join(BASE_DIR, 'templates'), 

HTH :)