2015-12-08 10 views
5

ich diesen Fehler, wenn meine Django App Admin-Panel zu gehen versucht:Django admin/template/Ordner installieren fehlen nach frisch in virtualenv

TemplateDoesNotExist bei /admin/index.html

Ausnahme Ort: /home/mhb11/.virtualenvs/redditpk/local/lib/python2.7/site-packages/django/template/loader.py in find_template, Linie 139

Template-loader Obduktion versucht Django diese Vorlagen Laden , in dies Reihenfolge: Verwenden von Loader django.template.loaders.filesystem.Loader: Verwenden von Loader django.template.loaders.app_directories.Loader: /home/mhb11/folder/project/templates/admin/index.html (Datei nicht vorhanden ) /home/mhb11/.virtualenvs/projectenv/local/lib/python2.7/site-packages/bootstrap_pagination/templates/admin/index.html (Datei existiert nicht)

ich habe eine neue Django Installation, hat keine Dateien verschoben, und settings.py hat django.contrib.admin hinzugefügt in INSTALLED_APPS.

Wenn ich zu /.virtualenvs/projectenv/local/lib/python2.7/site-packages/django/contrib/admin/ gehe, finde ich keinen Ordner /templates/ dort (der index.html und eine Reihe anderer Dateien enthalten würde).

Allerdings genau das gleiche Projekt, in einer anderen Maschine installiert hat, dass /templates/ Ordner. Ich habe Django in meiner virtuellen Umgebung deinstalliert und neu installiert, aber ohne Erfolg.

Installierte Anwendungen in settings.py hat folgende:

INSTALLED_APPS = ( 'django.contrib.auth', 'django.contrib.contenttypes', #'django.contrib.sessions', 'user_sessions', 'django.contrib.sites', 'django.contrib.messages', 'django.contrib.staticfiles', 'django.contrib.admin', 'django.contrib.comments', 'myapp', 'myproject', 'south', 'registration', 'bootstrap_pagination', 'djcelery', 'tweepy', 'django.contrib.humanize', 'analytical', 'mathfilters', #'request', #'debug_toolbar', #'analytical', #'django_whoshere', # Uncomment the next line to enable admin documentation: # 'django.contrib.admindocs', )

Und die vollständige Spur des Fehler ich erhalte, ist:

Internal Server Error: /admin/ Traceback (most recent call last): File "/home/mhb11/.virtualenvs/projectenv/local/lib/python2.7/site-packages/django/core/handlers/base.py", line 140, in get_response 
    response = response.render() File "/home/mhb11/.virtualenvs/projectenv/local/lib/python2.7/site-packages/django/template/response.py", line 105, in render 
    self.content = self.rendered_content File "/home/mhb11/.virtualenvs/projectenv/local/lib/python2.7/site-packages/django/template/response.py", line 80, in rendered_content 
    template = self.resolve_template(self.template_name) File "/home/mhb11/.virtualenvs/projectenv/local/lib/python2.7/site-packages/django/template/response.py", line 58, in resolve_template 
    return loader.get_template(template) File "/home/mhb11/.virtualenvs/projectenv/local/lib/python2.7/site-packages/django/template/loader.py", line 146, in get_template 
    template, origin = find_template(template_name) File "/home/mhb11/.virtualenvs/projectenv/local/lib/python2.7/site-packages/django/template/loader.py", line 139, in find_template 
    raise TemplateDoesNotExist(name) TemplateDoesNotExist: admin/index.html 

Haben Sie jemals etwas gesehen mag ich? Wie löse ich das?

+0

Zur Lösung dieses Problems aktualisiert werden könnten Sie diesen Ansatz folgen: http://stackoverflow.com/a/34532454/5170753 –

Antwort

6

Ich habe das schon einmal gesehen. /templates/ ist nicht der einzige Ordner, den Sie wahrscheinlich vermissen. Und beachten Sie, dass Sie hier einen Django-Ordner /yourvirtualenv/django/ platziert haben, der alle erforderlichen Ordner enthält. Was das Problem lösen für Sie die Dateien kopiert (ohne Überschreiben) /yourvirtualenv/django/-/yourvirtualenv/local/lib/python2.7/site-packages/django/ über folgenden ubuntu-Befehl: rsync -a -v --ignore-existing src dst wo src ist /yourvirtualenv/django/ (d Quelle) und dst ist /yourvirtualenv/local/lib/python2.7/site-packages/django/ (das heißt das Ziel). Als nächstes feuern Sie einfach Django Admin wieder an und es sollte funktionieren!

Ich bin mir nicht ganz sicher, warum das passiert - anekdotisch ist es Pip falsch mit älteren Django-Installationen. Ich werde diese Antwort aktualisieren, wenn ich neue Informationen dazu bekomme. Viel Glück!

+2

Es ist besser, 'zu verwenden --no-Binär-django django“ BIB installieren – manu

7

Ich musste eine alte mit pip installieren und ich konfrontiert ein ähnliches Problem. Der Ordner templates fehlte in der Django App.

Dank Kommentar auf @shahz Antwort auf @manu, fixierte ich das Problem, indem sie mit der Neuinstallation

pip install --no-binary django django==1.3.7 

Eine aktuelle Version von pip erforderlich ist. Es kann mit

pip install --upgrade pip 
+0

Ja, dies ist eine echte Möglichkeit, das Problem zu lösen, ich kann bestätigen! –

+0

Vielen Dank! Nur einen Tag verbrachte Debugging dieses Denken, es war mein Code, der das Problem verursacht. – ferrouswheel

Verwandte Themen