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匹配地址写死。

相关推荐
凡梦千华11 小时前
django迁移表结构和数据
数据库·django
猎人everest12 小时前
Django Rest Framework (DRF) 核心知识体系梳理与深度讲解
后端·python·django
码界奇点14 小时前
基于Django与Ansible的智能运维管理系统设计与实现
运维·python·django·毕业设计·ansible·源代码管理
Q_Q5110082851 天前
python+django/flask+vue的大健康养老公寓管理系统
spring boot·python·django·flask·node.js
非鱼feiyu1 天前
自关联数据表查询优化实践:以 Django + 递归 CTE 构建树结构为例
数据库·后端·django
Q_Q19632884751 天前
python+django/flask+vue的多媒体素材管理系统
spring boot·python·django·flask·node.js·php
ServBay1 天前
Django 6.0 发布,新增原生任务队列与 CSP 支持
后端·python·django
Q_Q5110082851 天前
python+django/flask+vue农业电商服务系统
spring boot·python·pycharm·django·flask
Q_Q5110082851 天前
python+django/flask+vue的基于疫情防控管理系统的数据可视化分析系统
spring boot·python·django·flask·node.js
计算机学姐1 天前
基于Python的校园美食推荐系统【2026最新】
开发语言·vue.js·后端·python·mysql·django·推荐算法