我有一个djangoappengine项目,我的最新部署返回了以下错误:
Error importing authentication backend myapp.dashboard.authentication.DashboardAuthentication:
"No module named authentication"
该项目最初使用此身份验证后端,但我已更新它以从设置中删除它并定义不同的身份验证后端。
旧设置:
AUTHENTICATION_BACKENDS = (
'myapp.dashboard.authentication.DashboardAuthentication',
'django.contrib.auth.backends.ModelBackend'
)
新设置:
AUTHENTICATION_BACKENDS = (
'new_auth_package.authentication.DashboardAuthentication',
'django.contrib.auth.backends.ModelBackend'
)
文件参考
我相信我的settings.py文件已成功部署及其更改,因为如果我将调试更改为False并重新部署,我会得到更加模糊的500错误。
我在整个项目中搜索过我可能引用旧的auth后端的任何地方,而不是在settings.py中,而且没有任何内容。
有可能appengine缓存对我的身份验证后端的引用,无论settings.py说什么?
版本
我尝试部署版本2并更新我的默认版本以指向它,但问题仍然存在。
奇怪的是,如果我在1.myapp.appspot.com和2.myapp.appspot.com上访问应用程序,它会对两个版本使用正确的身份验证。但是,无论我将哪个版本设置为默认值,浏览到默认的myapp.appspot.com仍会出现此错误。
在我不小心告诉appengine缓存内容的地方,我有什么遗漏吗?或者有什么方法可以强制重置以摆脱该引用?
答案 0 :(得分:0)
用于登录的身份验证后端存储在会话中。因此,如果您登录,然后将其删除并部署,系统将在尝试根据您的会话找到您的用户时出错。
解决方案:清除您的会话。