一、在网页中做加减法

采用/add/?a=11&b=22这样get方法进行

django-admin.py startproject zqxt_views
cd zqxt_views
python manage.py startapp calc

我们修改一下视图文件views.py

from django.shortcuts import render
from django.http import HttpReponse def add(request):
a=request.GET['a']
b=request.GET['b']
c=int(a)+int(b)
return HttpResponse(str(c))

注:request.GET 类似于一个字典,更好的办法是用 request.GET.get('a', 0) 当没有传递 a 的时候默认 a 为 0

接着修改urls.py文件,添加一个网址来对应我们刚才新建的视图函数

from django.conf.urls import url
from django.contrib import admin
from calc import views as calc_views urlpatterns=[
url(r'^add/$',calc_views.add,name='add'),
url(r'^admin/',admin.site.urls),
]

启动服务python manage.py runserver 8002

打开网址http://127.0.0.1:8002/add/

报错因为没有传值

改下网址 ?a=4&b=5,即访问 http://127.0.0.1:8002/add/?a=4&b=5

在网页上显示一个9,试着改变a和b对应的值,得到不同的结果

2、采用/add/3/4这样的网址和方式

前面说过django支持优雅的网址

我们接着修改views.py文件,再新定义一个add2函数

def add2(request, a, b):
c = int(a) + int(b)
return HttpResponse(str(c))

接着修改urls.py文件,再添加一个新的url

url(r'^add/(\d+)/(\d+)/$',calc_views.add2,name='add2'),

我们可以看到网址中多了 (\d+), 正则表达式中 \d 代表一个数字,+ 代表一个或多个前面的字符,写在一起 \d+ 就是一个或多个数字,用括号括起来的意思是保存为一个子组(更多知识请参见 Python 正则表达式),每一个子组将作为一个参数,被 views.py 中的对应视图函数接收。

我们再访问 http://127.0.0.1:8002/add/4/5/ 就可以看到和刚才同样的效果,但是这回网址更优雅了

2django 视图与网址进阶的更多相关文章

  1. Django 视图与网址进阶

    一 .在网页上做加减法 1. 采用 /add/?a=4&b=5 这样GET方法进行 1 2 3 django-admin.py startproject zqxt_views cd zqxt_ ...

  2. 【Django视图与网址进阶004】

    一.在网页上做加减法 1. 采用 /add/?a=4&b=5 这样GET方法进行 django-admin.py startproject zqxt_views cd zqxt_views p ...

  3. 1.2、Django 视图与网址__进阶

    Django 视图与网址进阶 1.1.简单使用: 把我们新定义的app加到settings.py中的INSTALL_APPS中 修改 HelloDjango/HelloDjango/settings. ...

  4. Django之路: 基本命令与网址进阶

    一.Django 基本命令 温馨提示:如果你想学习Django,那么就请您从现在开始按照笔记记录一步一步的用手把代码敲出来,千万不要偷懒哦..... 1.创建一个Django project djan ...

  5. django 视图与网址

    我是一个新手,内容粗糙,望大家多多指点.在这里我只是总结自身所学. 视图与网址 操作文件:urls.py.views.py urls.py 作用:用于处理前台的链接(如前台访问:127.0.0.1:8 ...

  6. Django视图与网址

    Django中网址是写在 urls.py 文件中,用正则表达式对应 views.py 中的一个函数(或者generic类),我们用一个项目来演示. 下载本节所有源代码: 学习编程最好的办法就是动手敲代 ...

  7. Django web框架-----视图与网址的不同请求方式

    在网页上做加减法 说明:mytestsite是django框架下的项目,quicktool是mytestsite项目中的应用 方式一:采用  /add/?a=1&b=4这种get方法进行 qu ...

  8. Django web框架-----win10搭建django2.1.7开发环境,定义简易视图及网址

    ① 安装Django 使用pip命令或者pycharm setting的project Interpreter工具添加安装 检查是否安装成功,以下命令无报错即成功: 查看安装的Django版本号的两种 ...

  9. Django的视图与网址之加法计算

    在最新的Django2.1中,views.py中采用的地址映射方式发生了变化,通过一个加法运算我们来看一看. 方法一:在视图views.py中定义视图逻辑,求解两个数的加法运算:c = a + b,定 ...

随机推荐

  1. UVA 10679 I love Strings!!!(AC自己主动机)

    http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&p ...

  2. 公网通过代理访问阿里云vpc redis

    前提条件 如果您需要从本地 PC 端访问 Redis 实例进行数据操作,可以通过在 ECS 上配置端口映射或者端口转发实现.但必须符合以下前提条件: 若 Redis 实例属于专有网络(VPC),ECS ...

  3. swift 中的问号跟感叹号

    ?: 变量在使用过程中可能存在空值,则需要用?标记,否则赋空值会报错 ? 1 2 var mustNoNilValue: String = "Swift" var canNilVa ...

  4. webstore 与 热编译的配置冲突

    这个勾去掉就会自动编译了!

  5. js中删除数组元素的几种方法

    1:js中的splice方法 splice(index,len,[item])    注释:该方法会改变原始数组. splice有3个参数,它也可以用来替换/删除/添加数组内某一个或者几个值 inde ...

  6. Nginx日志配置与切割

    访问日志主要记录客户端访问Nginx的每一个请求,格式可以自定义.通过访问日志,你可以得到用户地域来源.跳转来源.使用终端.某个URL访问量等相关信息. Nginx中访问日志相关指令主要有两条,一条是 ...

  7. C# 接口中的索引器

    索引器可在 接口(C# 参考) 上声明.接口索引器的访问器与类索引器的访问器具有以下方面的不同: 接口访问器不使用修饰符. 接口访问器没有体. 因此,访问器的用途是指示索引器是读写.只读还是只写.以下 ...

  8. 利用NIO的Selector处理服务器-客户端模型

    package NIOTEST; import java.io.IOException; import java.net.InetAddress; import java.net.InetSocket ...

  9. hadoop System times on machines may be out of sync. Check system time and time zones.

    之前环境一直好好的,由于玩坏了一个mini3只能复制一个了,但是复制之后就出现这个问题了 解决办法是 设置xshell向每一个窗口发消息http://mofansheng.blog.51cto.com ...

  10. Apache + Tomcat集群 + 负载均衡

    Part I: 取经处: http://www.ramkitech.com/2012/10/tomcat-clustering-series-simple-load.html  http://blog ...