Администратор сайта: TemplateDoesNotExist в / admin / - PullRequest
16 голосов
/ 25 января 2012

Я следую официальному Django Tutorial 2 , но по какой-то причине не могу создать сайт администратора, несмотря на то, что, насколько я понимаю, все шаги выполнены правильно.

Это ошибка, которую я получаю:

TemplateDoesNotExist at /admin/
admin/login.html
Request Method: GET
Request URL:    http://127.0.0.1:8000/admin/
Django Version: 1.3.1
Exception Type: TemplateDoesNotExist
Exception Value:    
admin/login.html
Exception Location: /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/template/loader.py in find_template, line 138
Python Executable:  /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python
Python Version: 2.7.2
Python Path:    
['/Users/jcugley/Documents/Programming/Python/Django/mysite',
 '/Library/Python/2.7/site-packages/setuptools-0.6c11-py2.7.egg',
 '/Library/Frameworks/Python.framework/Versions/2.7/lib/python27.zip',
 '/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7',
 '/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-darwin',
 '/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac',
 '/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac/lib-scriptpackages',
 '/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-tk',
 '/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-old',
 '/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload',
 '/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages',
 '/Library/Python/2.7/site-packages']
Server time:    Tue, 24 Jan 2012 18:40:03 -0600

Ошибка возникает после того, как я раскомментировал следующие строки (с комментариями):

### urls.py ###
from django.conf.urls.defaults import patterns, include, url

from django.contrib import admin # THIS LINE
admin.autodiscover() # THIS LINE

urlpatterns = patterns('',
    url(r'^admin/', include(admin.site.urls)), # THIS LINE
)

Если я прокомментирую их снова, это избавит от ошибки.

У меня есть есть django.contrib.admin в моем INSTALLED_APPS в settings.py

Ответы [ 14 ]

0 голосов
/ 19 июля 2019
pip uninstall django
pip install django --no-cache-dir

это два работает для меня. Я использую Django 2.2.3

0 голосов
/ 12 июля 2019

Я добавляю «ответ», поскольку я не могу с моей текущей «репутацией» добавить комментарий.

После Аарон решение:

В проекте сDjango 1.4 с докером с той же проблемой (доступ к yourproject / admin / login.html или yourproject / admin / index.html).Я использовал в python.dockerfile это и решил:

"RUN pip install -r requirements.txt --no-cache-dir"

Перед тем, как я это сделал, я проверил ввод внутри докера, что внутри папки usr / local / lib / python2.7 / site-packages /django / contrib / admin / не существовало в папке /templates/.

Я читал это до того, как пришел к этому сообщению: https://www.mail-archive.com/search?l=django-users@googlegroups.com & д = Заголовок:% 22TemplateDoesNotExist + при +% 5C% 5C% 2Fadmin% 2F% 22 & о = новейший & F = 1

0 голосов
/ 05 июля 2016

Я думаю, что есть некоторые пакеты, которые вы не установили в INSTALLED_APPS, в моем случае я установил import_export, так как использовал importexportmodels

0 голосов
/ 02 июня 2016

Несмотря на свою полезность, вышеупомянутые ответы являются частичными. Я полагаю, что разработчик должен знать, что происходит на заднем плане, а именно, «как» возникает это исключение.

Как можно видеть в исключении, Exception - это TemplateDoesNotExist, а имя значения - это путь, и что-то не так с файлом «loader.py». Хотя я использовал Django 1.1.4, я почти уверен, что исключение возникает из-за строки (в loader.py), где проверяется os.path.isdir (template_dir). Он не может найти папку шаблонов (каталог) в папке django, которая находится в папке site-packages в папке lib Python.

Интуитивно можно сказать, что это из-за неправильной установки django. Это хорошее упражнение, чтобы выяснить причину исключения, покопавшись в источнике. Когда эта ошибка произошла в моем проекте, я не переустанавливал django, вместо этого я скопировал папки из корня (C: / Python27 / django / contrib) - да, я использую Windows - для его аналога в пакетах сайта, и это сработало !

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...