diff --git a/tournaments/views.py b/tournaments/views.py index 453c55c..ceb77fa 100644 --- a/tournaments/views.py +++ b/tournaments/views.py @@ -411,7 +411,11 @@ def activate(request, uidb64, token): if user is not None and account_activation_token.check_token(user, token): user.is_active = True user.save() - login(request, user) + + # Specify the authentication backend when logging in + from django.contrib.auth import login + login(request, user, backend='django.contrib.auth.backends.ModelBackend') + next_url = request.GET.get('next', '/') return redirect(next_url) else: @@ -724,11 +728,14 @@ def my_tournaments(request): 'user_name': user.username }) -class ProfileUpdateView(UpdateView): +from django.contrib.auth.mixins import LoginRequiredMixin + +class ProfileUpdateView(LoginRequiredMixin, UpdateView): model = CustomUser form_class = ProfileUpdateForm template_name = 'profile.html' success_url = reverse_lazy('profile') + login_url = '/login/' # Specify where to redirect if user is not logged in def get_object(self, queryset=None): return self.request.user