博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Django RedirectView
阅读量:5162 次
发布时间:2019-06-13

本文共 1786 字,大约阅读时间需要 5 分钟。

  RedirectView作用是重定向一个指定,给定的Url.这个给定的Url可能包含有字典风格的字符串,因为关键字(词)会被改变,所以从这个Url中捕获的参数可能也会被修改,例如,Url中的“%”应该写成“%%”这样python才会将其修改成“%”。

  如果指定的Url是None,那么会触发:HttpResponseGone (410)

处理流程:

1.dispatch()
2.http_method_not_allowed()
3.get_redirect_url()

官例:

 

#views.pyfrom django.shortcuts import get_object_or_404from django.views.generic.base import RedirectViewfrom articles.models import Articleclass ArticleCounterRedirectView(RedirectView):permanent = Falsequery_string = Truepattern_name = 'article-detail'def get_redirect_url(self, *args, **kwargs):article = get_object_or_404(Article, pk=kwargs['pk'])article.update_counter()return super(ArticleCounterRedirectView, self).get_redirect_url(*args, **kwargs)

 

 

 

#urls.pyfrom django.conf.urls import urlfrom django.views.generic.base import RedirectViewfrom article.views import ArticleCounterRedirectView, ArticleDetailurlpatterns = [url(r'^counter/(?P
[0-9]+)/$', ArticleCounterRedirectView.as_view(), name='article-counter'),url(r'^details/(?P
[0-9]+)/$', ArticleDetail.as_view(), name='article-detail'),url(r'^go-to-django/$', RedirectView.as_view(url='https://djangoproject.com'), name='go-to-django'),]

 

 

 属性:

1.url:将会重定向到的url,如果是None,会返回410错误。

2.pattern_name:将被重定向的模式名

3.permanent:重定向是否是永久型的,默认是Fasle.它产生的唯一区别是Http状态码的不同;当permanent=True时,状态码为301,permanent=False时,状态码为302.

4.query_string:确定是否将GET查询子句发送到新的位置。默认为False,此时这个查询串被丢弃,如果设置为True,查询串会被加到Url的尾部。

方法:

get_redirect_url(*args, **kwargs)

构造目标Url用来重定向。

  它默认是把url当作开始字符串,并用%将从url中命名组中捕获来的参数扩展到url后面。如果url没有设置,get_redirect_url()会偿试用从Url中捕获的的参数来倒转pattern_name,如果是query_string发送的请求,它也会将这个query_string添加到它产生的url中。

  有些概念还没理解,估计得等以后学得深入些了才行,到时再来修改吧。

posted on
2016-09-10 03:30 阅读(
...) 评论(
...)

转载于:https://www.cnblogs.com/Andy963/p/5805505.html

你可能感兴趣的文章
Sharepoint 2013搜索服务配置总结(实战)
查看>>
博客盈利请先考虑这七点
查看>>
使用 XMLBeans 进行编程
查看>>
写接口请求类型为get或post的时,参数定义的几种方式,如何用注解(原创)--雷锋...
查看>>
【OpenJ_Bailian - 2287】Tian Ji -- The Horse Racing (贪心)
查看>>
Java网络编程--socket服务器端与客户端讲解
查看>>
List_统计输入数值的各种值
查看>>
学习笔记-KMP算法
查看>>
Timer-triggered memory-to-memory DMA transfer demonstrator
查看>>
跨域问题整理
查看>>
[Linux]文件浏览
查看>>
64位主机64位oracle下装32位客户端ODAC(NFPACS版)
查看>>
获取国内随机IP的函数
查看>>
今天第一次写博客
查看>>
江城子·己亥年戊辰月丁丑日话凄凉
查看>>
IP V4 和 IP V6 初识
查看>>
Spring Mvc模式下Jquery Ajax 与后台交互操作
查看>>
(转)matlab练习程序(HOG方向梯度直方图)
查看>>
『Raid 平面最近点对』
查看>>
【ADO.NET基础-数据加密】第一篇(加密解密篇)
查看>>