[英]Dynamic login_redirect_url in Django allauth
我正在使用django-alluth
進行社交登錄。 我擔心的是如何登錄特定的URL而不是settings.py
文件中的固定LOGIN_REDIRECT_URL
?
當我嘗試刪除LOGIN_REDIRECT_URL
並將我的登錄頁面url設置為accounts/login/?next=/some-url/
它不起作用。 它重定向到accounts/profile
,這是我的代碼中的404。
LOGIN_REDIRECT_URL = '/afterlogin'
ACCOUNT_AUTHENTICATED_LOGIN_REDIRECTS = True
這對我有用......
您需要在DefaultAccountAdapter
覆蓋get_login_redirect_url
。
# project/settings.py:
ACCOUNT_ADAPTER = 'project.users.adapter.MyAccountAdapter'
# project/users/adapter.py:
from django.conf import settings
from allauth.account.adapter import DefaultAccountAdapter
class MyAccountAdapter(DefaultAccountAdapter):
def get_login_redirect_url(self, request):
path = "/accounts/{username}/"
return path.format(username=request.user.username)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.