Перенаправить пользователя на другой URL с сигналом входа django-allauth
Я использую Django-allauth для своих вещей, связанных с входом в систему / регистрацией, поэтому, когда пользователь впервые регистрируется на моем сайте, я перенаправляю его на/thanks/
страница, определив ниже настройки вsettings.py
файл
LOGIN_REDIRECT_URL = '/Спасибо/'
Но когда пользователь попытался войти в систему в следующий раз (если он уже зарегистрирован), я должен перенаправить его на'/dashboard/'
URL
Так что попытался изменить это сDjango-allauth signals
как ниже, который не работает вообще
@receiver(allauth.account.signals.user_logged_in)
def registered_user_login(sender, **kwargs):
instance = User.objects.get_by_natural_key(kwargs['user'])
print instance.last_login==instance.date_joined,"??????????????????????????????"
if not instance.last_login==instance.date_joined:
return HttpResponseRedirect(reverse('dashboard'))
Так может кто-нибудь, пожалуйста, дайте мне знать, как перенаправить пользователя на/dashboard/
для обычного входа, я делаю что-то не так в коде сигнала выше?
редактировать
После некоторой модификации в соответствии с ответом нижеpennersr
мойAccountAdapter
класс выглядит как ниже
from allauth.account.adapter import DefaultAccountAdapter
# from django.contrib.auth.models import User
class AccountAdapter(DefaultAccountAdapter):
def get_login_redirect_url(self, request):
if request.user.last_login == request.user.date_joined:
return '/registration/success/'
else:
return '/dashboard/'
Но тем не менее, он перенаправляет пользователя на/dashboard/
, моя логика в определении первого пользователя неверна?