Django Allauth,多重登录重定向url
我有一个问题,如何在设置或视图中为不同的用户添加多个登录\u重定向\u URL。 例如,我有:管理员、人力资源部、教师、学生。。。等 对于每一个我需要重定向到一个不同的url,面板管理员为管理员等。 我需要添加组吗?还是不?Django Allauth,多重登录重定向url,django,Django,我有一个问题,如何在设置或视图中为不同的用户添加多个登录\u重定向\u URL。 例如,我有:管理员、人力资源部、教师、学生。。。等 对于每一个我需要重定向到一个不同的url,面板管理员为管理员等。 我需要添加组吗?还是不? 谢谢你的帮助 django allauth从account adapter中定义的方法获取登录重定向URLget_login_redirect_URL您可以定义自定义适配器并覆盖以下内容: 我的应用程序/适配器.py from allauth.account.adapter
谢谢你的帮助
django allauth
从account adapter中定义的方法获取登录重定向URLget_login_redirect_URL
您可以定义自定义适配器并覆盖以下内容:
我的应用程序/适配器.py
from allauth.account.adapter import DefaultAccountAdapter
class AccountAdapter(DefaultAccountAdapter):
def get_login_redirect_url(self, request):
url = super(AccountAdapter, self).get_login_redirect_url(request)
user = request.user
'''
# pseudocode, change it to actual logic
# check user role and return a different URL
role = get_user_role(user)
if role == 'student':
url = student_login_redirect_url
if role == 'teacher':
url = teacher_login_redirect_url
'''
return url
现在通过在settings.py
中定义ACCOUNT\u适配器来告诉allauth使用我们的自定义适配器:
ACCOUNT_ADAPTER = 'my_app.adapter.AccountAdapter'