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调用的视图函数之间的映射表.你就是以这 ...
随机推荐
- 84)PHP,SQL注入基础讲解
怎么预防: 填写防止SQL注入的代码:
- centos jdk
yum list java* yum install xxx -y java -version /* 可省略 */ vi /etc/profile export JAVA_HOME=/usr/lib/ ...
- keras使用、函数功能
#1. keras.engine.input_layer.Input() def Input(shape=None, batch_shape=None, name=None, dtype=None ...
- Google DevTools Explanation
Evaluating network performance The Network panel records information about each network operation in ...
- unittest(23)- python发邮件
import smtplib import time from email.mime.multipart import MIMEMultipart from email.mime.text impor ...
- JS去重函数的扩展应用
数据: 账单id[1,1,1,1,2,2,2,3,3,3,3,3,3,3], 相对于账单id的金额[100,120,110,150,200,180,220,115,150,120,180,220,14 ...
- <JZOJ1286>太空电梯
一道简单可爱的dp #include<cstdio> #include<iostream> #include<cstring> #include<algori ...
- Word目录生成
之所以写这篇文章,是因为每次写报告都需要生成相应目录,但常常只记得个大概,最终还得要重新百度,十分头疼,故在此记录一下. 大概分为3个步骤 步骤1 设置标题级数 进入大纲模式 选择相应级数,这里选的是 ...
- java虚拟机的运行原理
一.类加载器 首先来看一下java程序的执行过程. 从这个框图很容易大体上了解java程序工作原理.首先,你写好java代码,保存到硬盘当中.然后你在命令行中输入 javac YourClassNam ...
- Android 一个3D相册源码
我们专业课有Android的学习,最后老师让做一个简单的Android应用程序.我在网上找些资料,加上自己改造一下做了一个3D相册. 程序仿照Android的相册功能,调用Gallery类对相片进行浏 ...