django 从零开始 3认识url解析
在视图函数中定义一个函数abc

接受得到的参数 并显示在页面上
urls中设置

在页面会显示出错误 找不到该url ,原因是django1版本中使用的是url和re_path ,突然django2变为path默认不接受不带标识的url

如果想要使用path设置url接受参数 必须指定参数类型和参数名称<int:code>,并在视图函数中确认形参
不能接受 其他类型的参数 比如字符串

当然也可以使用url来配置路由路径 使用正则 匹配 个人觉得re和re_path差不多 ([0-9]{2}) 表示匹配数字0-9 并只匹配2个数字,再多也只显示2个数字



不过url指定的是位置参数,re_path指定的是关键字参数
re_path 李定义的关键字必须和视图函数中的关键字一样, <int:code>/<int:code1> 识图中必须 def xxx(request,code,code1):
url则无所谓,根据参数位置来
还有一定需要注意 path确定类型的数据是指定的类型,比如<int:code> 必定是int <str:code> 这是字符串
而url和re_path 统统都是字符串
视图函数形参位置根据你在urls中设置的位置,有几个设置几个形参位置 不能多不能少

还有request.GET.get('code')拿不到形参,估计是只能拿到url中?后的参数了 我没有在urls中设置?后面的参数 但是可以拿到 比如


如果不懂 推荐看 https://www.bilibili.com/video/av56094208/?p=4 从20分钟看
反向解析这是定义在路由中的name值,以及在项目urls中定义的namespace值
在html模板中使用 {% url 'namespace值:name值'%} 则指向定义该字段的视图函数
同时在视图函数中也可以使用
reverse('user:index')
带有参数的反向解析



指向 /
django 从零开始 3认识url解析的更多相关文章
- Django的url解析
Django中采用正则表达式来匹配所请求的url,这个叫做URLconf,作为MVC中的C(控制器), 这样再调用相应的试图,达到控制器控制试图的显示的效果. 看一下Django的url解析过程 第一 ...
- Django UrL 解析
Django的路由系统 URLconf 本质是URL与要为该URL调用的视图函数之间的映射表:你就是以这种方式告诉Django,对于客户端发来的某个URL调用哪一段逻辑代码对应执行. 1.1 djan ...
- Django 的路由层URL 分组 路由分发 反向解析
URL配置(URLconf)就像Django 所支撑网站的目录.它的本质是URL与要为该URL调用的视图函数之间的映射表:你就是以这种方式告诉Django,对于这个URL调用这段代码,对于那个URL调 ...
- Django基础之命名URL和URL反向解析
在使用Django项目时,一个常见的需求是获得URL的最终形式,以用于嵌入到生成的内容中(视图中和显示给用户的URL等)或者用于处理服务器端的导航(重定向等). 人们强烈希望不要硬编码这些URL(费力 ...
- 【django基础补充之URL,视图,模版】
一.url路由配置 URL配置(URLconf)就像Django 所支撑网站的目录.它的本质是URL与要为该URL调用的视图函数之间的映射表:你就是以这种方式告诉Django,对于这个URL调用这段代 ...
- Django之路由分发反向解析
Django路由分发|反向解析 当一个Django中有多个app时,路由会有很多,将这些路由都写在与项目同名的文件夹下就会显得很多,很乱.并且在协同开发的时候容易出现相同的命名,当项目合并后就会出现路 ...
- day052 django第三天 url和视图
一.基本格式 from django.conf.urls import url from . import views #循环urlpatterns,找到对应的函数执行,匹配上一个路径就找到对应的函数 ...
- django之admin源码解析
解析admin的源码 第一步:项目启动,加载settings文件中的 INSTALLED_APPS 里边有几个app就加载几个,按照注册顺序来执行. 第二步:其中加载的是admin.py,加载每一个a ...
- Django基础二之URL路由系统
一 URL配置 Django 1.11版本 URLConf官方文档 URL配置(URLconf)就像Django 所支撑网站的目录.它的本质是URL与要为该URL调用的视图函数之间的映射表.你就是以这 ...
随机推荐
- [LC] 46. Permutations
Given a collection of distinct integers, return all possible permutations. Example: Input: [1,2,3] O ...
- 吴裕雄--天生自然 JAVASCRIPT开发学习:对象 实例(2)
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- oracle存储过程随笔
有时间要把最近总结的存储过程的问题总结一下,先占坑: create or replace procedure test_proc2 as cursor cur is select YWR,YWRZJH ...
- python的IO
格式化输出 格式化输出是指通过print()等函数向指定的地方(比如屏幕)输出指定格式的内容 格式: age = 18 name = "xiaohua" print("我 ...
- 探究 "dependencies" vs "devDependencies"
在之前学习发布npm库的时候,感觉才真正弄懂了--save-dev和-save之前的区别. –save 当我们开发一个npm模块的时候,如果使用--save 大专栏 探究 "depende ...
- Seata-一站式分布式事务解决方案
Fescar 2019 年 1 月,阿里巴巴中间件团队发起了开源项目 Fescar(Fast & EaSy Commit And Rollback),和社区一起共建开源分布式事务解决方案. F ...
- (转)linux如何获取鼠标相对位置信息
#include <stdio.h> #include <stdlib.h> #include <linux/input.h> #include <fcntl ...
- 从Instagram“宁静、规则”的成功 看国内APP发展之路
看国内APP发展之路" title="从Instagram"宁静.规则"的成功 看国内APP发展之路"> Instagram在全球获得的巨大成功 ...
- mysql 分表实现方法详解
如果你需要进行mysql分表了我们就证明你数据库比较大了,就是把一张表分成N多个小表,分表后,单表的并发能力提高了,磁盘I/O性能也提高了.并发能力为什么提高了呢,因为查寻一次所花的时间变短了,如果出 ...
- memcached单点登录配置
域名 www.lxy.comblog.lxy.comnews.lxy.comshop.lxy.com php配置 session.save_handler = memcache session写mem ...