当将Django版本从1.11.18更新至2.x后发生了/admin页面返回500错误的情况
环境
-
- Python: 3.6
-
- pipenv: 2018.7.1
-
- pip: 18.0.0
- Django: 1.11.18, 2.1.4
作者寫作的契機
-
- AWS CodeStarが作成するDjangoが1.11.18製だったので,2.x系にアップデートしたかったから
- あくまで備忘録程度です
升级之后,无法访问/admin。
调查原因后,我发现在Python Django教程中无法访问admin页面,但这对我很有参考价值。
确实,根据官方文档,发现settings.MIDDLEWARE_CLASSES已被替换为settings.MIDDLEWARE。另外,请删除django.contrib.auth.middleware.SessionAuthenticationMiddleware。
因此,只需按照以下方式重新写作即可解决问题。
# MIDDLEWARE_CLASSES = [
# 'django.middleware.security.SecurityMiddleware',
# 'django.contrib.sessions.middleware.SessionMiddleware',
# 'django.middleware.common.CommonMiddleware',
# 'django.middleware.csrf.CsrfViewMiddleware',
# 'django.contrib.auth.middleware.AuthenticationMiddleware',
# 'django.contrib.auth.middleware.SessionAuthenticationMiddleware',
# 'django.contrib.messages.middleware.MessageMiddleware',
# 'django.middleware.clickjacking.XFrameOptionsMiddleware',
# ]
MIDDLEWARE = [
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
]
请您参考以下内容:
无法访问Python Django教程中的admin页面
官方文档
升级Django版本从1.9到2.1的备忘录