def get(self, request, *args, **kwargs):
"""
Same as django.views.generic.edit.ProcessFormView.get(),
but adds test cookie stuff
"""
# Get the username from a keycloak set header
userid = request.META.get(settings.KEYCLOAK_USERNAME_HEADER)
if userid:
try:
user = get_user_model().objects.get(userid=userid)
except:
user = get_user_model().objects.create_user(
userid=userid, is_active=True)
user.backend = 'django.contrib.auth.backends.ModelBackend'
login(self.request, user)
self.user = user
return HttpResponseRedirect(self.get_success_url())
else:
self.set_test_cookie()
return super(LoginView, self).get(request, *args, **kwargs)
评论列表
文章目录