登录后Django关闭重定向

时间:2016-09-19 15:17:09

标签: django

用户登录后有没有办法完全关闭重定向?我只是无法找到如何做到这一点...我只是在登录后不需要任何其他查询,因为它发生在模态窗口中。我尝试在设置中设置LOGIN_REDIRECT_URL = NoneLOGIN_REDIRECT_URL = '',但这都不起作用。我错过了什么吗?

1 个答案:

答案 0 :(得分:0)

因此,根据我的理解,您希望登录所需页面成为模态。

使用django的login_required无法实现这一目标,您可以使用ajax。

这必须在您的观点中:

def login_required_ajax_view(request):
    if request.is_ajax():
        if request.user.is_authenticated():
            return JsonResponse(data={'logged_in', True})
        return JsonResponse(data={'logged_in', False})
    return HttpResponse("not ajax")  # Add something if the call isn't ajax

这将成为您页面中的javascript:

function login_required() {
$.ajax({
   url: 'url goes here',
   data: data
   success: success  //on success call a function checking logged_in is 
                               //true or false then open modal to log in.
})}

如果返回true,则允许他们单击按钮并转到下一页。

相关问题