Python测试开发django3.视图和URL配置

1、Django path()方法

Django路由系统中最重要的path()方法可以接收4个参数,其中2个是必须的:route和view,以及2个可选的参数:kwargs和name

def path(route, view, kwargs=None, name=None):
                return re_path(route, view, kwargs, name)

route

route 是一个匹配 URL 的准则(类似正则表达式)。当 Django 响应一个请求时,它会从 urlpatterns 的第一项开始,按顺序依次匹配列表中的项,直到找到匹配的项,然后执行该条目映射的视图函数或下级路由,其后的条目将不再继续匹配。因此,url路由的编写顺序非常重要!

需要注意的是,route不会匹配 GET 和 POST 参数或域名。例如,URLconf 在处理请求 https://www.example.com/myapp/时,它会尝试匹配 myapp/。处理请求 https://www.example.com/myapp/?page=3 时,也只会尝试匹配 myapp/

view

view指的是处理当前url请求的视图函数。当Django匹配到某个路由条目时,自动将封装的HttpRequest对象作为第一个参数,被“捕获”的参数以关键字参数的形式,传递给该条目指定的视图view。

kwargs

任意数量的关键字参数可以作为一个字典传递给目标视图。

name

对你的URL进行命名,让你能够在Django的任意处,尤其是模板内显式地引用它。这是一个非常强大的功能,相当于给URL取了个全局变量名,不会将url匹配地址写死。

path()方法的四个参数,每个都非常有讲究,这里先做基本的介绍,在后面有详细的论述。

2、在之前创建的项目helloworld/helloworld目录下新建一个 view.py文件并新增代码如下:

from django.http import HttpResponse




def index(request):
    return HttpResponse("<a href='https://www.djangoproject.com/'>这个是django官网</a>")


def order_list(request):
    return HttpResponse("<b>这里是订单列表页面</b>")

3、urls.py新增配置代码如下:

from django.contrib import admin
from django.urls import path
from . import view   #新增
urlpatterns = [
    path('admin/', admin.site.urls),
    path('index/', view.index),  #新增
    path('order_list/', view.order_list),  #新增
]

4、启动服务,访问http://127.0.0.1:8000/login 由于没有找到对应的url,报错404了

再次访问http://127.0.0.1:8000/index/ 访问成功了,我们可以看到是view.py文件中的index方法的响应内容

再次访问http://127.0.0.1:8000/order_list/ 访问成功了,我们可以看到是view.py文件中的order_list方法的响应内容

【UI设计需求、平面设计需求】商务合作QQ:2017340535

【软件测试方案设计、测试方法指导】商务合作QQ:2017340535

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

王大力测试进阶之路

打赏博主喝瓶水吧!!!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值