Django--方法

path() 方法

一个路由配置模块就是一个urlpatterns列表,列表的每个元素都是一项path,每一项path都是以path()的形式存在。

path()方法可以接收4个参数,其中前2个是必须的:route和view,以及2个可选的参数:kwargs和name。

以下面的代码为例:

python 复制代码
from django.urls import path
from . import views
urlpatterns = [
    path('', views.index, name='index'),
]

route

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

例子中对应的route就是空字符串''

需要注意的是,route不会匹配 GET 和 POST 参数或域名。

view

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

kwargs

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

name

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

相关推荐
Sheffield9 小时前
为什么Django这么慢,却还是Python后端第一梯队呢?
linux·python·django
海兰10 小时前
Elasticsearch 搜索方案与技术栈深度解析
大数据·elasticsearch·django
yixin1231 天前
【玩转全栈】----Django基本配置和介绍
数据库·django·sqlite
luoluoal1 天前
基于python的医疗知识图谱问答系统(源码+文档)
python·mysql·django·毕业设计·源码
yueyin1234561 天前
在Django中安装、配置、使用CKEditor5,并将CKEditor5录入的文章展现出来,实现一个简单博客网站的功能
数据库·django·sqlite
墨染青竹梦悠然2 天前
基于SpringBoot + vue的农产品销售系统(华夏鲜仓)
vue.js·spring boot·python·django·毕业设计·毕设
wanderful_2 天前
自定义用户体系下 Django 业务模块开发踩坑与通用解决方案(技术分享版)
后端·python·django
H Journey2 天前
Django 教程
数据库·django·sqlite
墨染青竹梦悠然2 天前
基于Django+vue的单词学习平台
前端·vue.js·后端·python·django·毕业设计·毕设
YJlio3 天前
1.7 通过 Sysinternals Live 在线运行工具:不下载也能用的“云端工具箱”
c语言·网络·python·数码相机·ios·django·iphone