django-URL反向解析Reverse(九)

解决path中带参数的路径。

reverse(viewname,urlconf=None,args=None,Kwargs=None,current_app=None)

book/views.py

from django.http import HttpResponse
from django.shortcuts import render,redirect,reverse

# Create your views here.
def index(request):
    username = request.GET.get("username")
    if username is not None:
        return HttpResponse("welcome!")
    else:
        return redirect(reverse(‘loose‘,kwargs={‘a‘:100,‘b‘:200}))

def error(request,a,b):
    sum=a+b
    return HttpResponse("<h1>sum:{}</h1>".format(sum))

book/urls.py

from django.urls import path
from . import views

urlpatterns = [
    path(‘‘, views.index,name=‘index‘),
    path(‘error/<int:a>/<int:b>‘, views.error,name=‘loose‘),]

大体过程:启动服务器后会调用views中index函数,由于没有username参数,会重定向到loose(views.error的命名空间),即会调用error函数,此时有两个参数a,b,需要通过reverse才能够传下去。

原文地址:https://www.cnblogs.com/xiximayou/p/11737948.html

时间: 2024-10-30 22:47:08

django-URL反向解析Reverse(九)的相关文章

django URL反向解析和命名空间

一.反向解析URL 在实际的Django项目中,经常需要获取某条URL,为生成的内容配置URL链接. 比如,我要在页面上展示一列文章列表,每个条目都是个超级链接,点击就进入该文章的详细页面. 现在我们的urlconf是这么配置的:^post/(?P<id>\d+). 在前端中,这就需要为HTML的<a>标签的href属性提供一个诸如http://www.xxx.com/post/3的值.其中的域名部分,Django会帮你自动添加无须关心,我们关注的是post/3. 此时,一定不能硬

Django之url反向解析

在urls.py文件中,在进行url映射时,为请求的url命个名,以便在模板页面或者views.py视图中可以进行反向解析,同时在修改了url映射的请求路径,名称不变的情况下,不再修改模板页面或者视图中的数据,项目不受影响正常执行!url标签中使用模板变量和普通标签参数一样,空格隔开,{{ % url   别名   %}}即可. urls.py文件设置: url(r'^url_reverse/', views.url_reverse,name="view_reverse"), url(

python 之 Django框架(路由系统、include、命名URL和URL反向解析、命名空间模式)

12.36 Django的路由系统 基本格式: from django.conf.urls import url urlpatterns = [ url(正则表达式, views视图函数,参数,别名), ] ? 正则表达式: 一个正则表达式字符串 views视图函数:一个可调用对象,通常为一个视图函数或一个指定视图函数路径的字符串 参数: 可选的要传递给视图函数的默认参数(字典形式) 别名: 一个可选的name参数 12.361 路由正则表达式 from django.conf.urls imp

python之路_day107_django中url反向解析及数据库连接

一.url反向解析 在正式介绍反向解析之前,我们首先介绍一下在django中的url参数,如下为我们url实例,其中name参数就是其别名,也就是我们接下来讲解的反向解析中所依靠的参数. 1.模板中反向解析 在我们的前端页面上,如form表单,我们通常会指定提交的路径,但是以往我们都是将路径写死,这显然不是很合理,因为当url中的路径需要改变的时候,我们又需要逐一去更改页面.这样不合理.所以我们就要用到url的别名进行反向解析. 语法: {% url 'url的别名' %} 实例如下: 2.视图

Django学习【第2篇】:Django之反向解析

Django框架之第二篇 一.知识点回顾 1.MTV模型 model:模型,和数据库相关的 template:模板,存放html文件,模板语法(目的是将变量如何巧妙的嵌入到HTML页面中). views:视图函数 另加urls:url路径与视图函数的映射关系,,可以不是一一对应的. 2.相关的一些命令 创建一个Django项目:django-admin  startproject  projectname 创建一个项目下的应用:python3  manage.py  startapp  appn

django url 反响解析,视图

1. 内容回顾 1. 模板语言(字符串替换) 1. 母版和继承 1. 什么时候用母版? html页面有重复的代码,把它们提取出来放到一个单独的html文件. (比如:导航条和左侧菜单) 2. 子页面如何使用母版? {% extends 'base.html' %} --> 必须要放在子页面的第一行 母版里面定义block(块),子页面使用block(块)去替换母版中同名的块 2. 组件 1. 什么时候用组件? 重复的代码,包装成一个独立的小html文件. 2. 如何使用? {% include

Django url 标签和reverse()函数的使用(转)

原文:http://www.yihaomen.com/article/python/355.htm 使用url标签和reverse()函数,可以避免在模板和view中对url进行硬编码,这样即使url改变了,对模板和view也没有影响 起初用django 开发应用的时候,完全是在urls.py 中硬编码配置地址,在views.py中HttpResponseRedirect()也是硬编码转向地址,当然在template 中也是一样了,这样带来一个问题,如果在urls.py 中修改了某个页面的地址,

Django模板--反向解析

1.当某一个url配置的地址发生变化时,页面上使用反向解析生成地址的位置不需要发生变化 (1)根据url正则表达式的配置动态的生成url (2)在项目urls中包含具体应用的urls文件时指定namespace (3)在应用的urls.py文件的url中加name 2.在模板文件中使用 (1) 3.在重定向中使用 (1)格式 (2)例子 原文地址:http://blog.51cto.com/13742773/2345872

名称空间 反向解析 reverse

原文地址:https://www.cnblogs.com/FlFtFw/p/9829170.html