我目前正在使用开箱即用的django.contrib.auth
来处理我的Django应用中的身份验证。这意味着用户从登录页面开始,并在成功登录时重定向到应用程序。我想让我的应用程序单页,包括此登录过程,其中不会发生重定向,但可能是“热门”模板切换或某些花哨的客户端div魔术(that still remains secure)。我的Google searching非常简短,closest solution处理每个页面上的登录表单。
这里的任何方向或想法都将非常感激。如果可能的话,我显然更愿意在django.contrib.auth
的现有范围内工作,但我对所有解决方案持开放态度。
答案 0 :(得分:2)
我不确定我完全理解你的问题。我想你想要一个页面。如果是这样,请在模板中放置逻辑,以检查用户是否已通过身份验证。如果没有,请显示POSTS到相应django.contrib.auth
视图的登录表单。您可以为此视图提供参数,以使其重定向回您的页面。当您回来时,将对用户进行身份验证,因此您不会显示登录表单。
答案 1 :(得分:1)
看看Django-Easy-Pjax https://pypi.python.org/pypi/django-easy-pjax - 它就像一个魅力,并且有很好的记录。您喜欢的一切都是使用AJAX请求制作的:链接,使用GET的表单和使用POST的表单。
基本上,您只需在data-pjax="#id_of_the_container_where_the_result_goes"
和a
标记中添加form
属性即可。
关于它的好处:它更新浏览器的标题和位置栏。
一个警告:如果您想以某种形式上传文件,Easy-Pjax不支持此功能,因此您可能需要使用一些解决方法jQuery库。