首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Django通过next参数实现登录后跳转回到前一页的3种方法

小编我今天就来总结下Django中如何实现用户登录后跳转回前一页的几种方法,希望对大家有所帮助。...如果我们不知道用户尝试访问的前一个页面是什么,我们该如何操作呢?这时我们可以用request.path获取前一页面,如下所示。这是目前最好的解决方案。... 如果你使用django-allauth负责用户注册登录, 你可以直接使用{% url 'account_login' %}获取登录链接,前面不需要加myaccount:。...方法二: 使用login_required装饰器 用户尝试访问的页面总是对应某个视图,这时我们可以给这个视图加上login_required装饰器。...更多内容见Django基础(10): URL重定向的HttpResonseDirect, redirect和reverse方法详解。

2.4K30

Django来敲门~第一部分【9.使用Django内置视图处理对象简化开发】

为无为,则无不治 ——老子《道德经》 ---- 首先,要说这是Django基础部分的最后一个章节了。...内置视图处理对象的定义 对于我们视图处理函数,从最原始的HttpResponse()来进行页面数据的输出,到render()函数进行模板页面的操作,已经是可以满足我们的需求了,但是Django赶脚还不够...template_name = "results.html" # 定义投票结果 def vote(request, question_id): # 获取查询的问题对象 question...这个问题就对了,我们看看Django源代码 首先查看ListView class ListView(MultipleObjectTemplateResponseMixin, BaseListView):...从基础文件view.py中,我们可以看到,各种视图模板的基础处理操作和视图类型的封装都有了简洁的定义,我们需要做的就是在项目中,继承这些Django已经封装好的对象,快捷的完成项目的开发。

90730
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Django来敲门升级版----认证authenticate

    (‘account’, ‘account@email.com’, ‘password’) user.save() 1.2....这个问题最直接的解决方案就是如果进行了权限更新的话,为了不受缓存数据的影响,直接从数据库中重新获取用户数据即可!...(‘myapp.change_article’) # False # 获取change_article权限对象 content_type = ContentType.objects.get_for_model...from django.contrib.auth import logout def logout_view(request): logout(request) # 重定向到下一个页面...登录失败操作 在实际项目操作过程中,需要用户身份认证才能访问的函数的正确作法推荐两种,一种是认证失败时跳转到登录页面,但是要附带当前路径信息,方便用户登录成功以后直接跳转到正在访问的页面,另一种直接跳转错误页面即可

    61330

    评论

    model = Comment 表明这个表单对应的数据库模型是 Comment 类。...Django 的表单和这个思想类似,正常的前端表单代码应该是和本文开头所提及的那样,但是我们目前并没有写这些代码,而是写了一个 CommentForm 这个 Python 类。...post 的详情页,实际上当 redirect 函数接收一个模型的实例时,它会调用这个模型实例的 get_absolute_url 方法, # 然后重定向到 get_absolute_url...这个函数位于 django.shortcuts 模块中,它的作用是对 HTTP 请求进行重定向(即用户访问的是某个 URL,但由于某些原因,服务器会将用户重定向到另外的 URL)。...如果接收一个模型的实例,那么这个实例必须实现了 get_absolute_url 方法,这样 redirect 会根据 get_absolute_url 方法返回的 URL 值进行重定向。

    3.2K60

    使用django-allauth管理用户登录与注册

    ) 邮件发送后的冷却时间(以秒为单位) ACCOUNT_LOGIN_ATTEMPTS_LIMIT (=5) 登录尝试失败的次数 ACCOUNT_LOGIN_ATTEMPTS_TIMEOUT (=300)...从上次失败的登录尝试,用户被禁止尝试登录的持续时间 ACCOUNT_LOGIN_ON_EMAIL_CONFIRMATION (=False) 更改为True,用户一旦确认他们的电子邮件地址,就会自动登录...SOCIALACCOUNT_AUTO_SIGNUP (=True) 使用从社交账号提供者检索的字段(如用户名、邮件)来绕过注册表单 LOGIN_REDIRECT_URL (="/") 设置登录后跳转链接...创建 app 及配置 由于 django-allauth 已经占用了 account 这个 app,所以我们需要创建一个名叫 users 的 app,并将其加入 settings.py 配置文件的 INSTALL_APPS...下载 django-allauth 模板和邮件文本文件 我们可以从 github 上将 django-allauth 的 /templates/account 文件夹拷贝至本地应用中(下载地址: https

    6.9K30

    Python Web 深度学习实用指南:第三部分

    您也可以通过转到这里来尝试此操作。 从较早的章节开始,我们一直在使用术语预训练模型。 我们还看到了 Cloud Vision API 如何使我们整合预训练的模型。...但是,该语言库正在不断发展,以增强开发人员社区的能力。...从页面底部复制重定向 URL,然后将其粘贴到[API]部分下的setup.txt文件中。...单击“编辑”,然后将三个重定向 URL 添加到“允许的返回 URL”字段中。 您将必须单击“添加另一个”以输入多个 URL。 点击“保存”。...要将环境变量添加到计算机,可以在这个页面上关注此文章。 就我而言,我已将环境变量命名为face_api_key。 您可以放置​​任何包含面部的图像。

    15.1K10

    python-Django-URL 路由(二)

    Django URL路由的示例 下面是一个简单的Django应用程序的示例,它使用URL路由来处理客户端请求。...如果请求方法是POST,视图函数将获取用户提交的文章标题和内容,并创建一个新的Post对象,然后将用户重定向到新创建的文章的详细页面。...第二个视图函数是post_detail,它显示单个博客文章的详细信息。视图函数获取文章的slug,并使用get_object_or_404函数从数据库中获取文章对象。...如果请求方法是POST,视图函数将获取用户提交的文章标题和内容,并更新现有的Post对象,然后将用户重定向到更新后的文章的详细页面。...这个视图函数使用Django的通用视图类CreateView来处理创建新文章的表单,然后重定向到post_list视图函数,这个视图函数将渲染一个包含所有文章的列表的HTML模板。

    82720

    Web Hacking 101 中文版 十二、开放重定向漏洞

    这个漏洞用于钓鱼攻击,便于让用户无意中浏览恶意站点,滥用给定站点的信任并将用户引导到另一个站点,恶意站点作为重定向目的地,可以将其准备成合法站点的样子,并尝试收集个人或敏感信息。...重要结论 我这里再说一遍,不是所有漏洞都很复杂。这里的开放重定向只需要将重定向参数修改为外部站点。 2..../103772 报告日期:2015.12.6 奖金:$500 描述: 这个开放重定向非常类似于上面讨论的主题安装漏洞,但是这里。...,在重定向期间不发生停顿,来告诉你你正在被重定向。...这就是我在漏洞报告中编写这一章的原因。如果你往前推进一小步,并且在你的报告中解释安全映像,它会确保顺利解决。 但是,即使是这样,公司有时候也会不理解你。

    80530

    Django 1.10中文文档-第一个应用Part4-表单和通用视图

    HttpResponseRedirect只接收一个参数:用户将要被重定向的URL; 在这个例子中,HttpResponseRedirect的构造函数中使用reverse()函数。...这个函数可以避免在视图函数中硬编码URL。它需要我们给出想要跳转的视图的名字和该视图所对应的URL模式中需要给该视图提供的参数。...它首先从数据库中获取selected_choice对象,计算新的投票数值然后将其保写回数据库。如果您的网站的两位用户尝试在完全相同的时间投票,这可能会出错。这被称为竞争条件。...这由model 属性提供; DetailView都是从URL中捕获名为"pk"的主键值,因此才需要把polls/urls.py中question_id改成了pk以使通用视图可以找到主键值。...更多关于通用视图的详细信息,请查看通用视图文档。

    2.4K40

    django之评论系统及多级评论

    Django 的表单和这个思想类似,正常的前端表单代码应该是和本文开头所提及的那样,但是我们目前并没有写这些代码,而是写了一个 CommentForm 这个 Python 类。...# 这里我们使用了 Django 提供的一个快捷函数 get_object_or_404, # 这个函数的作用是当获取的文章(Post)存在时,则获取;否则返回 404 页面给用户。...post 的详情页,实际上当 redirect 函数接收一个模型的实例时,它会调用这个模型实例的 get_absolute_url 方法, # 然后重定向到 get_absolute_url...这个函数位于 django.shortcuts 模块中,它的作用是对 HTTP 请求进行重定向(即用户访问的是某个 URL,但由于某些原因,服务器会将用户重定向到另外的 URL)。...如果接收一个模型的实例,那么这个实例必须实现了 get_absolute_url 方法,这样 redirect 会根据 get_absolute_url 方法返回的 URL 值进行重定向。

    6.9K61

    PythonWeb框架之Django

    但是此时你写的还是有问题的,我之前说过,你此时写的url路由匹配是模糊匹配,你如果是这样写的url,当从浏览器输入127.0.0.1:8000/book/2003/12/08它还是映射到year_books...我们可以用多种方式使用redirect()函数 1.传递一个具体的ORM对象 # 将调用ORM对象的get_absolute_url()方法来获取重定向的URL; from django.shortcuts...# 301和302状态码都表示重定向,就是说浏览器在拿到服务器返回的这个状态码后会自动跳转到一个新的URL地址,这个地址可以从响应的Location首部中获取 # (用户看到的效果就是他输入的地址A瞬间变成了另一个地址...301表示旧地址A的资源已经被永久地移除了(这个资源不可访问了),搜索引擎在抓取新内容的同时也将旧的网址交换为重定向之后的网址; # 302表示旧地址A的资源还在(仍然可以访问),这个重定向只是临时地从旧地址..._meta.model_name获取小写的表名,还有model对象.app_label可以获取这个对象的app应用名等等操作。

    2.6K50

    django 1.8 官方文档翻译: 1-2-4 编写你的第一个Django应用,第4部分

    请注意 Django 也同样的提供了通过 request.GET 获取 GET 数据的方法 – 但是在代码中我们明确的使用了 request.POST 方法,以确保数据是通过 POST 方法来修改的。...HttpResponseRedirect 对象需要一个参数:用户将被重定向的 URL (请继续看下去在这情况下我们是如何构造 URL ) 。...这些视图代表了基本的 Web 开发中一种常见的问题: 根据 URL 中的参数从数据库中获取数据,加载模板并返回渲染后的内容。...这两个视图分别用于显示两种抽象概念 “显示一系列对象的列表” 和 “显示一个特定类型的对象的详细信息页”。 每个视图都需要知道使用哪个模型数据。因此需要提供将要使用的 model 参数。...DetailView 通用视图期望从 URL 中捕获名为 “pk” 的主键值,因此我们将 poll_id 改为 pk 。

    1.5K10

    django 1.8 官方文档翻译:13-1-2 使用Django认证系统

    修改密码 Django不会在user模型上存储原始的(明文)密码,而只是一个哈希(完整的细节参见文档:密码是如何管理的)。因为这个原因,不要尝试直接操作user的password属性。...除非你正在编写你自己的认证系统,你可能不会使用到它。当然如果你在寻找一种登录user的方法,请参见login_required()装饰器。 权限和授权 Django从开始就带有一个简单的权限系统。...如果你正在添加权限并需要立即检查它们,例如在一个测试或视图中,最简单的解决办法是从数据库中重新获取User。...如果通过POST调用并带有用户提交的凭证,它会尝试登入该用户。如果登入成功,该视图重定向到next中指定的URL。...URL名称:password_reset_done 注意 如果提供的email地址在系统中不存在,用户未激活,或者密码不可用,用户仍然会重定向到这个视图,但是不会发送邮件。

    4.7K20
    领券