从django 1.7升级到1.8后,我无法访问我的管理门户。我收到以下错误:
TEMPLATES
正如其他问题所述,我更改了TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [
os.path.join(BASE_DIR, 'MyANSRSource/templates/MyANSRSource/'),
os.path.join(BASE_DIR, 'employee/template/'),
os.path.join(BASE_DIR, 'employee/emp_photo/'),
],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
# Insert your TEMPLATE_CONTEXT_PROCESSORS here or use this
#global_settings.TEMPLATE_CONTEXT_PROCESSORS + (
# 'django.template.context_processors.request',
#),
# list if you haven't customized them:
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.template.context_processors.debug',
'django.template.context_processors.i18n',
'django.template.context_processors.media',
'django.template.context_processors.static',
'django.template.context_processors.tz',
'django.contrib.messages.context_processors.messages',
],
},
},
]
设置,但没有帮助。
read-host
答案 0 :(得分:5)
如果您的设置中没有SITE_ID
,Django 1.8, will try to use the hostname(例如127.0.0.1:8000
)可以找到该网站。如果您的数据库中没有包含该域名的站点,则会收到错误:
Site matching query does not exist.
您有几个选择:
'django.contrib.sites'
设置中将其从INSTALLED_APPS
中删除。SITE_ID
设置为您要使用的网站的值。如果您未对数据库中的站点进行任何更改,SITE_ID = 1
可能会有效。example.com
更改为127.0.0.1:8000
)。这是最脆弱的修复,因为您的项目现在适用于127.0.0.1:8000
,但不适用于localhost:8000
。答案 1 :(得分:1)
尝试通过运行命令manage.py createsuperuser
来创建新用户。使用此用户登录,您现在应该可以访问管理面板。
然后找到您的用户对象并确保它具有正确的权限。如Minor features下的1.8更改日志中所述。
当我升级时,我没有访问管理面板的正确权限。