我只是使用userena创建用户功能,并且一切正常,除了在尝试登录管理页面时会出现此错误,并且我正在使用django 1.9.7和userena 2.0.1。我读了一些旧文章,并说要删除INSTALLED_APPS中的'django.contrib.sites',但是如果删除它,userena将无法工作。
这是错误信息:

DoesNotExist at /admin/login/

Site matching query does not exist.

Request Method:     GET
Request URL:    http://127.0.0.1:8000/admin/login/?next=/admin/
Django Version:     1.9.7
Exception Type:     DoesNotExist
Exception Value:

Site matching query does not exist.


和settings.py

...
INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'django.contrib.sites',
    'polls',
    'MessageBoard',
    'userena',
    'guardian',
    'easy_thumbnails',
    'accounts',
]

...

# email
EMAIL_BACKEND = 'django.core.mail.backends.dummy.EmailBackend'

# required settings
ANONYMOUS_USER_ID = -1
AUTH_PROFILE_MODULE = 'accounts.MyProfile'
USER_SIGNIN_REDIRECT_URL = '/accounts/%(username)s/'
LOGIN_URL = '/accounts/signin/'
LOGOUT_URL = '/accounts/signout/'

最佳答案

此错误表明您尚未在数据库中配置Site。可以通过管理员来完成。如果访问http://localhost:8000/admin/sites/site/,您将看到当前列表为空。

只需添加一个站点,然后添加

SITE_ID = 1


进入您的settings.py

关于python - 使用userena时,在/admin/login/处不存在,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38626574/

10-10 06:50