Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/312.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Django下一页在登录页中不工作_Python_Django_Login - Fatal编程技术网

Python Django下一页在登录页中不工作

Python Django下一页在登录页中不工作,python,django,login,Python,Django,Login,我打开浏览器,尝试访问Django网站。我已经注销了我的帐户,所以我被重定向到我的登录页面,我将要登录的页面作为get参数 http://website.com/login/?next=/customer/7/54 但是,当我输入登录信息时,我会被重定向到: http://website.com/ 尽管如此,我还是试图做到: http://website.com/customer/7/54 /customer/7/54指向一个视图,该视图确实具有@login\u所需的decorator,但

我打开浏览器,尝试访问Django网站。我已经注销了我的帐户,所以我被重定向到我的登录页面,我将要登录的页面作为get参数

http://website.com/login/?next=/customer/7/54
但是,当我输入登录信息时,我会被重定向到:

http://website.com/
尽管如此,我还是试图做到:

http://website.com/customer/7/54
/customer/7/54指向一个视图,该视图确实具有@login\u所需的decorator,但我假设它在我登录后仍然指向该视图。发生了什么

编辑:所以我意识到,我有一个隐藏的输入标签:

    <input type="hidden" name="next" value='/'>


但是,如何将GET参数'/customer/7/54/传递到登录模板中?

根据您编辑的问题,您可以在登录页面获得下一个参数,如下所示:

<input type="hidden" name="next" value="{{ next }}">

standart django的
django.contrib.auth.views.login
next
变量直接传递到模板上下文。 另外,请阅读以下文档:

您还可以指定包含URL的GET字段的名称 要在登录后通过将redirect_field_name传递给视图重定向到。 默认情况下,该字段称为next


但您可能不需要更改此设置。

适用于使用自己视图的用户。您必须向模板发送“下一步”

def login_view(request):
    '''..your logic..'''
    ctx = {'form':form,'next':next}
    return render_to_response('login.html',ctx,context_instance=RequestContext(request))

当您手动导航到
http://website.com/customer/7/54
它是否正确显示?您使用的是内置登录视图(
django.contrib.auth.views.login
),还是您自己编写的?dgel:yes。aganders3:使用内置的登录视图。你能发布你的登录模板吗?