PythonWeb开发基础教程-第3章-URL分发课件.pptx
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《PythonWeb开发基础教程-第3章-URL分发课件.pptx》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- PythonWeb 开发 基础教程 URL 分发 课件
- 资源描述:
-
1、Python Web开发基础教程(Django版)第3章 URL分发本章主要内容:URL配置 URL参数传递 反向解析URL URL 命名空间3.1 URL分发机制简介 URL的基本格式为“协议:/域名或IP地址/路径/文件名”。域名或IP地址在Web服务器中分配给Web站点。路径是网络资源在Web服务器中的逻辑路径。文件名通常与网络资源的物理文件名一致。例如,http:/ manage.py startproject”命令创建项目时,Django默认在根URL配置模块中添加了“path(admin/,admin.site.urls)”。admin.site.urls是Django提供的管理站
2、点项目的URL配置模块。通过“admin”路径,来访问Django管理站点。本书将在8.1节中讲解使用Django管理站点的方法。3.2 URL配置URL配置指使用URL解析函数建立URL模式与视图函数之间的映射关系,也就是设置访问视图函数的URL规则。本节主要内容 URL解析函数 使用正则表达式 包含其他的URL配置3.2.1URL解析函数URL配置文件中的urlpatterns变量为URL解析函数的实例列表。Django提供两个URL解析函数:django.urls.path()和django.urls.re_path()。另外,django.conf.urls.url()是 django
3、.urls.re_path()的别名,并有可能在未来被弃用,应慎用 HelloWorld项目中的urls.py文件代码。from django.contrib import admin from django.urls import path from.import views urlpatterns=path(,views.hello,name=hello),path(admin/,admin.site.urls),其中:“from django.contrib import admin”导入Django的默认管理站点admin。“from django.urls import path”导
4、入URL解析函数path()。“from.import views”导入当前目录中的视图模块views(对应views.py文件)。Urlpatterns变量包含了两个URL映射。path(,views.hello,name=hello):第一个参数为空字符串,用于匹配只使用域名或IP地址的URL,如“127.0.0.1:8000”。第二个参数“views.hello”设置了URL匹配时调用的视图函数。第三个参数“name=hello”将URL模式的名称设置为“hello”。path(admin/,admin.site.urls):第一个参数为“admin/”,用于匹配“域名或IP地址/adm
5、in/”格式的URL,如“127.0.0.1:8000/admin/”。path()和re_path()函数的原型如下。path(route,view,kwargs=None,name=None)re_path(route,view,kwargs=None,name=None)访问Django站点的URL基本格式为“协议:/域名或IP地址/路径”。参数route为URL模式,用于匹配请求的URL中的“路径”。参数view用于设置路径匹配时调用的视图函数。可选参数kwargs用于设置传递给视图函数的附加数据。可选参数name为URL模式命名。在URL反向解析时用URL模式的名称可获得访问视图函数
6、的URL。path()和re_path()函数的第一个参数route都是字符串,re_path()函数将route参数作为正则表达式使用。3.2.2使用正则表达式 正则表达式提供了一种灵活的字符串匹配方式。re_path()函数使用正则表达式定义URL模式。下表列出了常用的正则表达式符号。符号符号说明说明示例示例示例说明示例说明|匹配其中一个选项ab|cd匹配ab或cd匹配字符串起始部分dj匹配任何以dj开始的字符串$匹配字符串末尾部分url$匹配任何以url结束的字符串*匹配零次或者多次出现的左端0-9*匹配以任意数字开始的字符串+匹配一次或者多次出现的左端0-9+匹配以一个或者多个数字字符
7、串?匹配零次或者一次出现的左端0-9?匹配零个或者一个数字N匹配N次左端0-95匹配5位数字字符串M,N匹配M次到N次左端0-92,5匹配25位数字字符串匹配括号中的任意一个abcd匹配a或者b或者c或者d-匹配指定范围中的一个字符a-f匹配a到f之间的任意一个字符不匹配指定的任何一个字符abc匹配不是a或b或c的任意字符常用的正则表达式正则表达式正则表达式匹配说明匹配说明0-9*$数字dn$n位的数字dn,$至少n位的数字dm,n$m-n位的数字(0|1-90-9*)$零和非零开头的数字(1-90-9*)+(.0-91,2)?$非零开头的最多带两位小数的数字(-)?d+(.d2,5)?$带2
8、5位小数的正数或负数(-|+)?d+(.d+)?$正数、负数、小数0-9+(.0-95)?$有两位小数的正实数0-9+(.0-91,3)?$有13位小数的正实数1-9d*$或或+?1-90-9*$非零的正整数-1-90-9*$或或-1-9d*$非零的负整数u4e00-u9fa50,$汉字.5,30$长度为530的所有字符A-Za-z+$由大小写英文字母组成的字符串A-Z+$由大写英文字母组成的字符串a-z+$由小写英文字母组成的字符串A-Za-z0-9+$由数字和大小写英文字母组成的字符串w+(-+.w+)*w+(-.w+)*.w+(-.w+)*$E-mail地址d15|d18$身份证号(15
9、位、18位数字)实例创建一个项目chapter3和应用useRe,在应用中定义视图函数,视图函数根据请求的URL不同输出相应的信息。具体操作步骤如下。演示3.2.3包含其他的URL配置1包含其他文件中的URL配置实例:为项目chapter3添加一个应用testinclude,为应用创建一个urls.py文件以配置URL访问应用的视图函数,并在项目chapter3的URL配置中包含应用的URL配置。具体操作步骤如下。演示2包含path()实例列表在前面的例子中,path(root/,include(testinclude.urls)包含了testinclude应用的urls.py中的URL配置。
10、可以在项目的URL配置文件中,定义path()实例列表来包含testinclude应用的urls.py中的URL配置。例如,可将项目的URL配置文件修改为如下代码。#chapter3chapter3urls.py from testinclude import views as subViews sub=path(sub2/,subViews.useinclude),urlpatterns=path(root2/,include(sub),#包含应用testinclude的URL配置 也可直接在include()参数中提供path()实例列表,示例代码如下。path(root2/,includ
展开阅读全文