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 HttpResponsedef 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