django中缺少管理站点

时间:2014-03-26 08:36:16

标签: django

当我尝试在我的django项目中获取/管理时,我得到以下错误:

DoesNotExist at /admin/
Site matching query does not exist. Lookup parameters were {'pk': 1}
Request Method: GET
Request URL:    http://localhost:8000/admin/
Django Version: 1.5
Exception Type: DoesNotExist
Exception Value:    
Site matching query does not exist. Lookup parameters were {'pk': 1}
Exception Location: /Users/me/.virtualenvs/project/lib/python2.7/site-packages/django/db/models/query.py in get, line 401
Python Executable:  /Users/me/.virtualenvs/project/bin/python

这很奇怪,因为在settings.py我确实有:

INSTALLED_APPS = (
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.sites',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    # Uncomment the next line to enable the admin:
    'django.contrib.admin',
...
)

我使用python manage.py runserver运行项目,我的网站其余部分正在运行,但管理页面除外......可能是什么原因?

2 个答案:

答案 0 :(得分:1)

问题似乎在于您正在使用"网站框架"但没有"创造"数据库中的站点。

python manage.py syncdb

然后将网站添加到django_site表,其中id = 1

答案 1 :(得分:0)

您似乎没有使用网站框架,它仍然包含在设置中。

只需转到您的settings.py文件并发表评论''django.contrib.sites'(如下所示)

'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
**#'django.contrib.sites',**
'django.contrib.messages',
'django.contrib.staticfiles',p
'django.contrib.admin',

现在应该可以了。 如果将Django版本升级到1.6 (最新的稳定版本),它也会有所帮助。只需转到命令行并键入pip install django --upgrade即可获得最新的Django稳定版本。