参考

需要完成以下任务

- 访问http://127.0.0.1:8000/                  返回"hello maotai"或home.html
- 访问http://127.0.0.1:8000/add/?a=1&b=2 返回之和
- 访问http://127.0.0.1:8000/add2/2/3 返回值和
- 访问http://127.0.0.1:8000/add2_v2/2/3 跳转到add2,并返回之和

项目代码实现

views.html书写

views.html

#### 返回字符串
def index(request):
return HttpResponse("hello maotai") #### url参数 ?a=1&b=2 方式传参
def add(request):
a = request.GET['a']
b = request.GET['b']
c = int(a) + int(b)
return HttpResponse(c) #### url参数/2/3 方式传递
def add2(request, a, b):
c = int(a) + int(b)
return HttpResponse(str(c)) #### 重定向到add2, url的cname
#### 模板解析也用到了reverse函数,解析谁? 解析html,将解析到的结果返回
def add2_v2(request, a, b):
return HttpResponseRedirect(reverse('add2', args=(a, b))) #### 返回html
def home(request):
return render(request, "home.html")

urls.py

urlpatterns = [
path('', views.index),
path('home/', views.home),
path('add/', views.add),
path('add2/<int:a>/<int:b>', views.add2, name='add2'),
path('add2_v2/<int:a>/<int:b>', views.add2_v2, name='add2_v2'),
path('admin/', admin.site.urls),
]

home.html

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>home</title>
</head>
<body>
<!-- url写死 -->
{#<a href="/add2/2/3">add 2+3 </a>#} <!-- url写活 最终解析/add2/4/5 -->
<a href="{% url 'add2' 4 5 %}">add2 4+5 </a> <br>
<a href="{% url 'add2_v2' 4 5 %}">add2_v2 4+5 </a>
</body>
</html>

[py]django url 参数/reverse和HttpResponseRedirect的更多相关文章

  1. django URL参数在view中传递和Template的反向解析方式

    一. URL参数在view中传递 1.带参数名:通过named group方式传递指定参数,语法为: (?P<name>pattern), name 为传递参数的名称,pattern代表所 ...

  2. django额外参数的传递和url命名

    django额外参数的传递 path方法:path(route, view, kwargs=None, name=None) path方法可以传递入一个额外参数的字典参数(kwarg),字典里的值就会 ...

  3. Python自动化之django URL

    URL url(r'^detail-(?P<nid>\d+)-(?P<uid>\d+).html', views.detail) 会把(?P\d+)和(?P\d+)传到后台 需 ...

  4. Django URL name详解

    我们基于上一节的代码来开始这一节的内容. 上节源代码:zqxt_views(django 1.4 - django 1.10).zip [更新于 2016-09-06 00:13:23] 1. 打开 ...

  5. django——url(路由)配置

    URL是Web服务的入口,用户通过浏览器发送过来的任何请求,都是发送到一个指定的URL地址,然后被响应. 在Django项目中编写路由,就是向外暴露我们接收哪些URL的请求,除此之外的任何URL都不被 ...

  6. Django UrL 解析

    Django的路由系统 URLconf 本质是URL与要为该URL调用的视图函数之间的映射表:你就是以这种方式告诉Django,对于客户端发来的某个URL调用哪一段逻辑代码对应执行. 1.1 djan ...

  7. Django url处理

    Django如何处理一个请求当一个用户请求Django 站点的一个页面,下面是Django 系统决定执行哪个Python 代码遵循的算法:1:Django 决定要使用的根URLconf 模块.通常,这 ...

  8. Django url()函数详解

    url()函数看起来的格式象: url(r^/account/$', views.index, name=index) ,它可以接收四个参数,分别是两个必选参数: regex . view 和两个可选 ...

  9. django url调度

    Django的url配置相同遵循着DRY(dont repeat yourself)的规则.下面都是官方文档的样例: 首先介绍的是Django怎样处理http的请求: 1.在setting里定义ROO ...

随机推荐

  1. Material Design系列第五篇——Working with Drawables

    Working with Drawables This lesson teaches you to Tint Drawable Resources Extract Prominent Colors f ...

  2. 游戏服务器学习笔记 3———— firefly 的代码结构,逻辑

    注:以下所有代码都是拿暗黑来举例,由于本人能力有限很多地方还没有看透彻,所以建议大家只是参考.有不对的地方非常欢迎指正. 一.结构     系统启动命令是,python statmaster.py,启 ...

  3. 【大数据系列】HDFS文件权限和安全模式、安装

    HDFS文件权限 1.与linux文件权限类型 r:read w:write x:execute权限x对于文件忽略,对于文件夹表示是否允许访问其内容 2.如果linux系统用户sanglp使用hado ...

  4. Linux命令 swap:内存交换空间

    swap 内存交换空间的概念 swap使用上的限制

  5. mac下编译 boost编译工具b2

    cd boost_1_64_0/tools/build ./bootstrap.sh --with-toolset=gcc 输出: -n Bootstrapping the build engine ...

  6. 2018 青岛ICPC区域赛E ZOJ 4062 Plants vs. Zombie(二分答案)

    Plants vs. Zombies Time Limit: 2 Seconds      Memory Limit: 65536 KB BaoBao and DreamGrid are playin ...

  7. 【CF896E】Welcome home, Chtholly 暴力+分块+链表

    [CF896E]Welcome home, Chtholly 题意:一个长度为n的序列ai,让你支持两种操作: 1.l r x:将[l,r]中ai>x的ai都减去x.2.l r x:询问[l,r ...

  8. python unittest框架中addCleanup函数详解

    接上一篇doCleanups说明,这次介绍下另一个很好用的函数:addCleanup 还是老规矩,看官方文档说明: addCleanup(function, *args, **kwargs)¶ Add ...

  9. Spring加载xsd文件报错:because 1) could not find the document; 2) the document could not be read...

    Spring启动时加载xml文件的过程: spring在加载xsd文件时总是先试图在本地查找xsd文件(spring的jar包中已经包含了所有版本的xsd文件),如果没有找到,才会转向去URL指定的路 ...

  10. Thinkphp框架下设置session的过期时间

    打开项目中的配置文件,添加session的过期配置,如下: 'SESSION_OPTIONS' => array( 'name' => 'BJYSESSION', //设置session名 ...