Google App Engine 在部署后使用旧设置(AUTHENTICATION_BACKENDS 来自 settings.py)
Google App Engine using old settings after deployment (AUTHENTICATION_BACKENDS from settings.py)
我有一个 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 错误。
我已经在我的整个项目中搜索了除 settings.py 之外可能引用旧身份验证后端的任何地方,但没有任何内容。
无论 settings.py 说什么,appengine 是否都可以缓存对我的身份验证后端的引用?
版本
我尝试部署版本 2 并更新我的默认版本以指向它,但问题仍然存在。
奇怪的是,如果我在 1.myapp.appspot.com 和 2.myapp.appspot.com 访问应用程序,它会为两个版本使用正确的身份验证。但是浏览到默认 myapp.appspot.com 仍然会出现此错误,无论我将哪个版本设置为默认。
在我不小心告诉 appengine 缓存东西的地方是否遗漏了什么?或者有什么方法可以强制重置以摆脱该引用?
用于登录的身份验证后端存储在您的会话中。因此,如果您登录,然后将其删除并部署,系统将在尝试根据您的会话查找您的用户时出错。
解决方案:清除会话。
我有一个 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 错误。
我已经在我的整个项目中搜索了除 settings.py 之外可能引用旧身份验证后端的任何地方,但没有任何内容。
无论 settings.py 说什么,appengine 是否都可以缓存对我的身份验证后端的引用?
版本
我尝试部署版本 2 并更新我的默认版本以指向它,但问题仍然存在。
奇怪的是,如果我在 1.myapp.appspot.com 和 2.myapp.appspot.com 访问应用程序,它会为两个版本使用正确的身份验证。但是浏览到默认 myapp.appspot.com 仍然会出现此错误,无论我将哪个版本设置为默认。
在我不小心告诉 appengine 缓存东西的地方是否遗漏了什么?或者有什么方法可以强制重置以摆脱该引用?
用于登录的身份验证后端存储在您的会话中。因此,如果您登录,然后将其删除并部署,系统将在尝试根据您的会话查找您的用户时出错。
解决方案:清除会话。