0

我目前正在使用开箱即用的方式django.contrib.auth来处理我的 Django 应用程序中的身份验证。这意味着用户从登录页面开始,并在成功登录时被重定向到应用程序。我想让我的应用程序单页,包括这个登录过程,其中不会发生重定向,但可能是“热”模板切换或一些花哨的客户端 div 魔术(仍然保持安全)。我的谷歌搜索结果很短,最接近的解决方案是在每个页面上放置一个登录表单。

这里的任何方向或想法将不胜感激。如果可能的话,我显然更愿意在现有范围内工作django.contrib.auth,但我对所有解决方案持开放态度。

4

2 回答 2

2

我不确定我是否完全理解你的问题。我想你想要一个页面。如果是这样,请将逻辑放入您的模板中,以检查用户是否已通过身份验证。如果不是,则显示一个登录表单,该表单发布到相应的django.contrib.auth视图。您可以为此视图提供一个参数,使其重定向回您的页面。当您回来时,用户将通过身份验证,因此您不会显示登录表单。

于 2013-04-25T02:19:29.610 回答
1

看看 Django-Easy-Pjax https://pypi.python.org/pypi/django-easy-pjax - 它就像一个魅力,并且有据可查。你喜欢的一切都是用 AJAX 请求制作的:链接、使用 GET 的表单和使用 POST 的表单。

本质上,您只需要在and标签中添加一个data-pjax="#id_of_the_container_where_the_result_goes"属性。它的好处是:它会更新浏览器的标题和位置栏。aform

一个警告:如果您想以某种形式上传文件,Easy-Pjax 不支持此功能,因此您可能需要使用一些解决方法 jQuery 库。

于 2013-04-25T09:10:50.667 回答