1. URL配置

一、需求

1. 需求:在浏览器访问URL地址 http://127.0.0.1:8000/users/index 时,显示hello django信息

2. 实现

i. 需要编写一个视图函数

ii. 针对该视图函数配置访问路由

二、URL配置实现

1. 对于url访问地址 http://127.0.0.1:8000/users/index?a=1,只需要根据users/index进行url配置。

注意:前面的笔记中为了简单,直接在项目下的urls.py文件中进行配置,如下:

2. 但是为了减轻项目下的urls.py文件的配置量,方便url的管理,会分别在两个urls.py文件中进行配置:

· 项目下的urls.py文件

· users应用下的urls.py文件(此文件默认不存在,需要自己创建)

URL配置示例参考:

2. URL匹配流程

URL匹配流程(路由解析顺序)

URL匹配流程说明

1. 域名、端口、端口后的 "/",以及查询字符串(问号后面的键值参数)不参与匹配

2. 先到项目下的urls.py进行匹配,再到应用的urls.py匹配

3. 根据url配置的先后顺序,从上到下进行URL匹配    -----> 这里有个坑,如果上面的url配置覆盖掉了下面的url,容易

出现url匹配错误的情况

4. 在项目下匹配成功的URL部分会去掉,剩下的部分继续到应用下作匹配

5. 如果匹配成功,Django会调用对应的视图函数,返回响应内容给浏览器显示

6. 如果最终匹配不成功,Django会给浏览器返回 404 错误

3. 捕获URL路径中的参数

一、需求

1. 在服务器端视图中,获取通过URL路径传递过来的参数

2. 例如:对于请求URL  http://127.0.0.1:8000/news/1/2,需要获取URL路径中的数值1(类别id)和2(页码)

二、解决

1. 在配置URL时,可以使用正则表达式匹配URL中的参数

2. 需要使用 "小括号" 把要匹配的值变为正则的一个组,可以对组命名,也可以不命名

3. 当匹配成功后,Django会自动匹配成功的值,作为一个方法参数传递到视图函数中

三、代码参考

1. 未命名参数(位置参数):按定义的顺序传递

2. 命名参数(关键字参数):按定义的组名传递

最新文章

  1. java网络流传输,中文乱码问题。
  2. 抓取百度音乐频道歌曲url
  3. Elasticsearch——分词器对String的作用
  4. oracle之sqlplus讲解
  5. C#出题库项目的总结(1)
  6. Bug避障算法简介
  7. 如何在Eclipse中配置Tomcat
  8. Zookeeper集群和HBase集群
  9. android开发在adapter中使用反射添加元素
  10. HDOJ 2212 DFS
  11. TextView 超链接点击跳转到下一个Activity
  12. Keil C51 中的函数指针和再入函数
  13. Android线程和handler
  14. ThinkPHP基础知识
  15. 使用TensorFlow Object Detection API+Google ML Engine训练自己的手掌识别器
  16. hiveql笔记(一)
  17. Spring Boot简单应用——会员管理系统
  18. Wooden Sticks [POJ1065] [DP]
  19. MFC VC++获取当前程序的运行路径
  20. vue安装及axios、stylus、iview的安装流程整理

热门文章

  1. 【设计模式】java设计模式目录
  2. 分布式链路追踪系统Sleuth和ZipKin
  3. Java如何调用C语言程序,JNI技术
  4. 初步测试VS2017+Win10IoT,基于World Map of Makers
  5. ubuntu 16.04 & 18.04 远程桌面使用
  6. win10 uwp 通过 Win2d 完全控制笔迹绘制逻辑
  7. Redis核心原理与实践--字符串实现原理
  8. [考试总结]noip模拟41
  9. Python - 面向对象编程 - 实战(6)
  10. DH算法图解+数学证明