【发布时间】:2012-07-22 11:41:00
【问题描述】:
我有一个应用程序,我们将 Django 'User' 对象子分类为具有附加属性的 'AppAccount' 对象。现在我有一个视图可以执行以下操作:
appAccountObject.backend = 'django.contrib.auth.backends.ModelBackend'
login(request, appAccountObject)
redirect(someOtherView)
现在根据pdb,request.user 是在login() 调用之后的AppAccount 的一个实例,但request.user 是someOtherView 第一行中的一个Django User 实例。
为什么重定向调用将用户对象改回正常的 Django 用户?我怎样才能避免这种情况?
另外,上面的代码是否正确?添加backend 属性是否可以绕过对authenticate 的调用?如果不是,那么正确的做法应该是什么:我想自动登录用户,没有他们的凭据,然后重定向到另一个由 @login_required 装饰器包装的视图。
谢谢。
【问题讨论】:
标签: django django-users