django中间键重定向实例方法
1,定义和注册中间件
在注册的中间件中使用:
from django.http import HttpResponseRedirect
'''下面的书写方法会陷入死循环,所以必须加判断条件只调用一次'''
def process_request(self,request):
return HttpResponseRedirect('/QQ/test') #可写网站,也可写本地的相对路径
2,若要判断是否包含session,写判断时要注意上述方法在重定向会再调用一次,所以必须加判断使重定向只被调用一次,否则会陷入死循环
内容扩展
DJANGO中多种重定向方法使用
redirect和reverse
from django.core.urlresolvers import reverse from django.shortcuts import redirect #https://docs.djangoproject.com/en/1.8.2/topics/http/shortcuts/ @login_required def update_time(request): #进行要处理的逻辑 return redirect(reverse('test.views.invoice_return_index', args=[])) #跳转到index界面 redirect 类似HttpResponseRedirect的用法,也可以使用 字符串的url格式 /..index/?a=add reverse 可以直接用views函数来指定重定向的处理函数,args是url匹配的值。
其他
其他的也可以直接在url中配置 from django.views.generic.simple import redirect_to 在url中添加 (r'^test/$', redirect_to, {'url': '/author/'}), #我们甚至可以使用session的方法传值 request.session['error_message'] = 'test' redirect('%s?error_message=test' % reverse('page_index')) #这些方式类似于刷新,客户端重新指定url。
以上就是本次介绍的全部知识点内容,感谢大家的学习和对我们的支持。
相关推荐
-
Django 中间键和上下文处理器的使用
一.中间键的引入: Django中间件(Middleware)是一个 轻量级.底层的 "插件"系 统,可以介入 Django的请求和响应处理过程, 修改 Django的输入或输出. django中的中间键: django 中的中间件(middleware),在django中,中间件其实就是一个类,在请求到来和结束后,django会根据自己的规则在合适的时机执行中间件中相应的方法. 在 django项目的settings模块中,有一个 MIDDLEWARE_CLASSES 变量,其中每一
-
Django使用中间键实现csrf认证详解
Django中的csrf认证实现的原理 调用 process_view 方法 检查视图是否被 @csrf_exempt (免除csrf认证) - 去请求体或cookie中获取token 情况一(全站使用csrf认证,局部不想使用csrf认证) MIDDLEWARE = [ 'django.middleware.security.SecurityMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.
-
django中间键重定向实例方法
1,定义和注册中间件 在注册的中间件中使用: from django.http import HttpResponseRedirect '''下面的书写方法会陷入死循环,所以必须加判断条件只调用一次''' def process_request(self,request): return HttpResponseRedirect('/QQ/test') #可写网站,也可写本地的相对路径 2,若要判断是否包含session,写判断时要注意上述方法在重定向会再调用一次,所以必须加判断使重定向只被调用
-
对Django 转发和重定向的实例详解
转发和重定向: 转发:一次请求和响应,请求的地址没有发生变化,如果此时刷新页面,就会出现重做现象. 重定向:一次以上的请求和响应,请求地址发生一次以上的变化,如果此时刷新页面,就不会发生重做现象. 我来举个简单的列子,比如我手机号上不了4G网,我打电话给10086,说了我这个情况后,她会把这个情况反映给技术人员,来帮我解决这个问题,如果说我又有这个问题的话直接点击重播就好了,但我重播的是10086这个号码,然后再有她转给技术人员,如果再有问题还得继续这样,那么就显得很麻烦了,那这时候10086的
-
关于Django外键赋值问题详解
本文主要给大家介绍关于Django外键赋值的相关内容,分享出来供大家参考学习,在开始之前,我们先来看一段代码: class Article(models.Model): title = models.CharField(max_length=1024, default='') ... def __str__(self): return 'Article pk:%d %s' % (self.pk, self.title[:30]) class ArticleContent(models.Model
-
对Django外键关系的描述
注:本文需要你有一定的数据库知识,本文的数据库语法使用mysql书写 Django中,跟外键有关的关系有三种,下面来一一介绍. OneToManyField 这种最好理解,说白了就是最普通的外键,看看下面两个模型: class GoodsType(models.Model): name = models.CharField(max_length=50) class GoodsMessage(models.Model): Title = models.CharField(max_length='1
-
Django外键(ForeignKey)操作以及related_name的作用详解
之前已经写过一篇关于Django外键的文章,但是当时并没有介绍如何根据外键对数据的操作,也就是如何通过主表查询子表或者通过子表查询主表的信息 首先我定义了两个模型,一个是老师模型,一个是学生模型,一个老师对应多个学生,这个算是一个一对多的类型(如下图所示) 那么如果我们要想查询一个老师对应的学生有哪些,该如何操作呢? 首先我们先查询到老师的信息,在这里我们使用python shell 进行演示 ,输入命令python manage.py shell 进入python shell操作界面: 第一
-
django 外键model的互相读取方法
先设定一个关系模型如下: from django.db import models class Blog(models.Model): name = models.CharField(max_length=100) tagline = models.TextField() def __str__(self): return self.name class Author(models.Model): name = models.CharField(max_length=50) email = mo
-
django 外键创建注意事项说明
创建表需要链接外键时,需要注意的事项. class Book(models.Model): name=models.CharField(max_length=20) price=models.IntegerField() pub_date=models.DateField() publish=models.ForeignKey("Publish",on_delete=models.CASCADE) # 添加外键的时候publish 可以不加引号:如果不加引号外键就要写在主表上面,否则查
-
Django实现内容缓存实例方法
Django实现内容缓存: 1.内存缓存 settings.py文件配置 CACHES = { 'default': { 'BACKEND': 'django.core.cache.backends.locmem.LocMemCache', # 指定缓存使用的引擎 'LOCATION': 'unique-snowflake', # 写在内存中的变量的唯一值 'TIMEOUT':300, # 缓存超时时间(默认为300秒,None表示永不过期) 'OPTIONS':{ 'MAX_ENTRIES':
-
Django 外键查询的实现
目录 一.一对多 二.多对多(返回的内部是相关类的对象的查询集) 创建三张表,详情如下: class Publish(models.Model): id = models.AutoField(primary_key=True, auto_created=True) pname = models.CharField(max_length=40) city = models.CharField(max_length=50) def __str__(self): return self.pname c
-
Django中外键ForeignKey介绍使用
目录 1.on_delete 2.related_name 3.related_query_name 4.外键字段的保存 这一篇笔记介绍 Django 系统 model 的外键处理,ForeignKey 以及相应的处理方法. 这是一种一对多的字段类型,表示两张表之间的关联关系. 本篇笔记的目录如下: on_delete related_name related_query_name 外键字段的保存 1.on_delete 假设有两个 application,app1 和 app2 app1 下的
随机推荐
- lua中操作json数据的方法
- Bootstrap select多选下拉框实现代码
- 在批处理文件或配置文件中加入注释
- 详解iOS应用程序内购/内付费(一)
- java异常处理详细介绍及实例
- 网页(aspx)与用户控件(ascx)交互逻辑处理实现
- android中暂停背景音乐
- Python实现HTTP协议下的文件下载方法总结
- python插入数据到列表的方法
- 详解探索 vuex 2.0 以及使用 vuejs 2.0 + vuex 2.0 构建记事本应用
- 详解nodeJS中读写文件方法的区别
- 最简单的rundll2000.exe病毒完美解决方法
- SQL Server使用row_number分页的实现方法
- jquery获取焦点和失去焦点事件代码
- java加密解密示例分享
- C#利用System.Uri转URL为绝对地址的方法
- 介绍几个array库的新函数 php
- Springboot Cucumber测试配置介绍详解
- Java String字符串和Unicode字符相互转换代码详解
- python 自定义装饰器实例详解