fresh-controller-36545
10/10/2021, 5:09 PMpython
def htmx_login_required(f):
""" Ensure proper redirection when a HTMX request is unauthenticated – this ensures the login-form is not loaded into a partial-spot """
def func(request, *args, **kwargs):
if not request.htmx: # return bad-response for non-htmx requests
return HttpResponseBadRequest()
if not request.user or not request.user.is_authenticated: # redirect to login page
return HttpResponseClientRedirect(settings.LOGIN_URL)
return f(request, *args, **kwargs)
return func