我有一个应用程序,我们将 Django 'User' 对象细分为具有附加属性的 'AppAccount' 对象。现在我有一个视图,我可以在其中执行以下操作:
appAccountObject.backend = 'django.contrib.auth.backends.ModelBackend'
login(request, appAccountObject)
redirect(someOtherView)
现在根据pdb
,request.user
是调用AppAccount
后的一个实例,但在 的第一行是一个 Django User 实例。login()
request.user
someOtherView
为什么重定向调用将用户对象更改回普通的 Django 用户?我怎样才能避免这种情况?
另外,上面的代码正确吗?添加backend
属性是否可以绕过对 的调用authenticate
?如果不是,那么正确的方法应该是什么:我想自动登录用户,没有他们的凭据,然后重定向到另一个由@login_required
装饰器包装的视图。
谢谢。