在virtualenv中全新安装后,Django admin / template /文件夹丢失了

时间:2022-08-17 20:37:18

I get this error when trying to go to my Django app's admin panel:

尝试转到我的Django应用程序的管理面板时出现此错误:

TemplateDoesNotExist at /admin/index.html

在/admin/index.html上的TemplateDoesNotExist

Exception Location: /home/mhb11/.virtualenvs/redditpk/local/lib/python2.7/site-packages/django/template/loader.py in find_template, line 139

例外位置:/home/mhb11/.virtualenvs/redditpk/local/lib/python2.7/site-packages/django/template/loader.py in find_template,139行

Template-loader postmortem Django tried loading these templates, in this order: Using loader django.template.loaders.filesystem.Loader: Using loader django.template.loaders.app_directories.Loader: /home/mhb11/folder/project/templates/admin/index.html (File does not exist) /home/mhb11/.virtualenvs/projectenv/local/lib/python2.7/site-packages/bootstrap_pagination/templates/admin/index.html (File does not exist)

模板加载器postmortem Django尝试按以下顺序加载这些模板:使用loader django.template.loaders.filesystem.Loader:使用loader django.template.loaders.app_directories.Loader:/ home / mhb11 / folder / project / templates / admin /index.html(文件不存在)/home/mhb11/.virtualenvs/projectenv/local/lib/python2.7/site-packages/bootstrap_pagination/templates/admin/index.html(文件不存在)

I have a new Django installation, haven't moved any files, and settings.py has django.contrib.admin added in INSTALLED_APPS.

我有一个新的Django安装,没有移动任何文件,并且settings.py在INSTALLED_APPS中添加了django.contrib.admin。

If I go to /.virtualenvs/projectenv/local/lib/python2.7/site-packages/django/contrib/admin/ I do NOT find a /templates/ folder there (which would contained index.html and a bunch of other files).

如果我去/.virtualenvs/projectenv/local/lib/python2.7/site-packages/django/contrib/admin/我在那里找不到/ templates /文件夹(其中包含index.html和一堆其他文件)。

However, exactly the same project, installed in a different machine DOES HAVE that /templates/ folder. I uninstalled and reinstalled Django in my virtual environment, but to no avail.

但是,安装在不同机器上的完全相同的项目是否具有/ templates /文件夹。我在我的虚拟环境中卸载并重新安装了Django,但无济于事。

Installed apps in settings.py has the following:

settings.py中已安装的应用程序具有以下内容:

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', )

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',#取消注释下一行以启用管理员文档:#'django。 contrib.admindocs',)

And the full trace of the error I get is:

我得到的错误的完整痕迹是:

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

Have you ever seen anything like it? How do I solve this?

你见过类似的东西吗?我该如何解决这个问题?

2 个解决方案

#1


6  

I've seen this before. /templates/ isn't the only folder you're probably missing. And note that you have a django folder placed here /yourvirtualenv/django/ that has all the required folders. What will solve the problem for you is copying the files (without over-writing) from /yourvirtualenv/django/ to /yourvirtualenv/local/lib/python2.7/site-packages/django/ via the following ubuntu command: rsync -a -v --ignore-existing src dstwhere src is /yourvirtualenv/django/ (i.e. source) and dst is /yourvirtualenv/local/lib/python2.7/site-packages/django/ (i.e. destination). Next, just fire up Django admin again and it should work!

我以前见过这个。 / templates /不是您可能缺少的唯一文件夹。请注意,您在此处放置了一个django文件夹/ yourvirtualenv / django /,其中包含所有必需的文件夹。什么会为你解决被复制文件(无过写作)从/ yourvirtualenv / Django的/通过下面的ubuntu命令/yourvirtualenv/local/lib/python2.7/site-packages/django/问题:rsync的-a -v - 忽略现有的src dstwhere src为/ yourvirtualenv / django的/(即源)和dst为/yourvirtualenv/local/lib/python2.7/site-packages/django/(即目的地)。接下来,再次启动Django管理员,它应该工作!

I'm not exactly sure why this happens - anecdotally, it's pip misbehaving with legacy Django installations. I'll update this answer if I get new information on it. Good luck!

我不确定为什么会这样 - 有趣的是,它与传统的Django安装行为不端。如果我获得有关它的新信息,我会更新这个答案。祝你好运!

#2


7  

I had to install an old django 1.3 with pip and I faced a similar problem. The templates folder was missing in the django app.

我不得不用pip安装旧的django 1.3,我遇到了类似的问题。 django应用程序中缺少模板文件夹。

Thanks to @manu comment on @shahz answer, I fixed the problem by reinstalling with

感谢@manu对@shahz回答的评论,我通过重新安装修复了问题

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

A recent version of pip is required. It may be updated with

需要最新版本的pip。它可能会更新

pip install --upgrade pip

#1


6  

I've seen this before. /templates/ isn't the only folder you're probably missing. And note that you have a django folder placed here /yourvirtualenv/django/ that has all the required folders. What will solve the problem for you is copying the files (without over-writing) from /yourvirtualenv/django/ to /yourvirtualenv/local/lib/python2.7/site-packages/django/ via the following ubuntu command: rsync -a -v --ignore-existing src dstwhere src is /yourvirtualenv/django/ (i.e. source) and dst is /yourvirtualenv/local/lib/python2.7/site-packages/django/ (i.e. destination). Next, just fire up Django admin again and it should work!

我以前见过这个。 / templates /不是您可能缺少的唯一文件夹。请注意,您在此处放置了一个django文件夹/ yourvirtualenv / django /,其中包含所有必需的文件夹。什么会为你解决被复制文件(无过写作)从/ yourvirtualenv / Django的/通过下面的ubuntu命令/yourvirtualenv/local/lib/python2.7/site-packages/django/问题:rsync的-a -v - 忽略现有的src dstwhere src为/ yourvirtualenv / django的/(即源)和dst为/yourvirtualenv/local/lib/python2.7/site-packages/django/(即目的地)。接下来,再次启动Django管理员,它应该工作!

I'm not exactly sure why this happens - anecdotally, it's pip misbehaving with legacy Django installations. I'll update this answer if I get new information on it. Good luck!

我不确定为什么会这样 - 有趣的是,它与传统的Django安装行为不端。如果我获得有关它的新信息,我会更新这个答案。祝你好运!

#2


7  

I had to install an old django 1.3 with pip and I faced a similar problem. The templates folder was missing in the django app.

我不得不用pip安装旧的django 1.3,我遇到了类似的问题。 django应用程序中缺少模板文件夹。

Thanks to @manu comment on @shahz answer, I fixed the problem by reinstalling with

感谢@manu对@shahz回答的评论,我通过重新安装修复了问题

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

A recent version of pip is required. It may be updated with

需要最新版本的pip。它可能会更新

pip install --upgrade pip