当前位置: 首页 > news >正文

Django框架之模型视图-URLconf

URLconf

  • 浏览者通过在浏览器的地址栏中输入网址请求网站
  • 对于Django开发的网站,由哪一个视图进行处理请求,是由url匹配找到的

配置URLconf

  • 1.settings.py

    • 指定url配置

      ROOT_URLCONF = '项目.urls'
      
  • 2.项目中urls.py

    • 匹配成功后,包含到应用的urls.py

      url(正则, include('应用.urls'))
      
  • 3.应用中urls.py

    • 匹配成功后,调用views.py对应的函数

      url(正则, views.函数名)
      
  • 4.提示

      1. 正则部分推荐使用 r,表示字符串不转义,这样在正则表达式中使用 \ 只写一个就可以2. 不能在开始加反斜杠,推荐在结束加反斜杠正确:path/正确:path错误:/path错误:/path/3. 请求的url被看做是一个普通的python字符串,进行匹配时不包括域名、get或post参数3.1 如请求地址如下:http://127.0.0.1:8000/18/?a=103.2 去掉域名和参数部分后,只剩下如下部分与正则匹配18/
    

说明:

虽然路由结尾带/能带来上述好处,但是却违背了HTTP中URL表示资源位置路径的设计理念。

是否结尾带/以所属公司定义风格为准。

路由命名与reverse反解析(逆向)

1 路由命名

在定义路由的时候,可以为路由命名,方便查找特定视图的具体路径信息。

1) 在使用include函数定义路由时,可以使用namespace参数定义路由的命名空间,如

url(r'^',include('book.urls',namespace='book'))

命名空间表示,凡是book.urls中定义的路由,均属于namespace指明的book名下。

命名空间的作用:避免不同应用中的路由使用了相同的名字发生冲突,使用命名空间区别开。

2) 在定义普通路由时,可以使用name参数指明路由的名字,如

urlpatterns = [url(r'^$',index),# 匹配书籍列表信息的URL,调用对应的bookList视图url(r'^booklist/$',bookList,name='index'),url(r'^testproject/$',views.testproject,name='test'),
]

2 reverse反解析

使用reverse函数,可以根据路由名称,返回具体的路径,如:

from django.core.urlresolvers import reverse
#或者
from django.urls import reversedef testproject(request):return HttpResponse("OK")# 定义视图:提供书籍列表信息
def bookList(request):url = reverse('book:test')print(url)return HttpResponse('index')
  • 对于未指明namespace的,reverse(路由name)
  • 对于指明namespace的,reverse(命名空间namespace:路由name)

 

 

相关文章:

Django框架之模型视图-URLconf

URLconf 浏览者通过在浏览器的地址栏中输入网址请求网站对于Django开发的网站,由哪一个视图进行处理请求,是由url匹配找到的 配置URLconf 1.settings.py中 指定url配置 ROOT_URLCONF 项目.urls2.项目中urls.py 匹配成功后,包含到应用的urls…...

操作系统闲谈06——进程管理

操作系统闲谈06——进程管理 一、进程调度 01 时间片轮转 给每一个进程分配一个时间片,然后时间片用完了,把cpu分配给另一个进程 时间片通常设置为 20ms ~ 50ms 02 先来先服务 就是维护了一个就绪队列,每次选择最先进入队列的进程&#…...

DaVinci 偏好设置:用户 - UI 设置

偏好设置 - 用户/ UI 设置Preferences - User/ UI Settings工作区选项Workspace Options语言Language指定 DaVinci Resolve 软件界面所使用的语言。目前支持英语、简体中文、日语、西班牙语、葡萄牙语、法语、俄语、泰语和越南语等等。启动时重新加载上一个工作项目Reload last…...

Nacos超简单-管理配置文件

优点理论什么的就不说了,按照流程开始配配置吧。登录Centos,启动Naocs,使用sh /data/soft/restart.sh将自动启动Nacos。访问:http://192.168.101.65:8848/nacos/账号密码:nacos/nacos分为两部分,第一部分准…...

基于微信小程序的中国各地美食推荐平台小程序

文末联系获取源码 开发语言:Java 框架:springboot JDK版本:JDK1.8 服务器:tomcat7 数据库:mysql 5.7/8.0 数据库工具:Navicat11 开发软件:eclipse/myeclipse/idea Maven包:Maven3.3.…...

如何优雅的导出函数

在开发过程中,经常会引用外部函数。方法主要有两种: 方法一:包含头文件并制定lib位置 优点:使用简单缺点:lib和vs版本有关,不同的版本和编译模式可能导致编译失败 方法二:GetProcAddress 优…...

c++多重继承

1.概论多重继承是否有必要吗?这个问题显然是一个哲学问题,正确的解答方式是根据情况来看,有时候需要,有时候不需要,这显然是一句废话,有点像上马克思主义哲学或者中庸思。但是这个问题和那些思想一样&#…...

15_FreeRtos计数信号量优先级翻转互斥信号量

目录 计数型信号量 计数型信号量相关API函数 计数型信号量实验源码 优先级翻转简介 优先级翻转实验源码 互斥信号量 互斥信号量相关API函数 互斥信号量实验源码 计数型信号量 计数型信号量相当于队列长度大于1的队列,因此计数型信号量能够容纳多个资源,这在…...

二叉树(一)

二叉树(一)1.树的概念2.树的相关概念3.树的表示4.树在实际中的运用5.二叉树概念及结构6.特殊的二叉树7.二叉树的性质🌟🌟hello,各位读者大大们你们好呀🌟🌟 🚀🚀系列专栏…...

【SCL】1200案例:天塔之光数码管显示液体混合水塔水位

使用scl编写天塔之光&数码管显示&液体混合&水塔水位 文章目录 目录 文章目录 前言 一、案例1:天塔之光 1.控制要求 2.编写程序 3.效果 二、案例2:液体混合 1.控制要求 2.编写程序 三、案例3:数码管显示 1.控制要求 2.编写程序 3…...

5.1配置IBGP和EBGP

5.2.1实验1&#xff1a;配置IBGP和EBGP 实验目的 熟悉IBGP和EBGP的应用场景掌握IBGP和EBGP的配置方法 实验拓扑 实验拓扑如图5-1所示&#xff1a; 图5-1&#xff1a;配置IBGP和EBGP 实验步骤 IP地址的配置 R1的配置 <Huawei>system-view Enter system view, return …...

c++中超级详细的一些知识,新手快来

目录 2.文章内容简介 3.理解虚函数表 3.1.多态与虚表 3.2.使用指针访问虚表 4.对象模型概述 4.1.简单对象模型 4.2.表格驱动模型 4.3.非继承下的C对象模型 5.继承下的C对象模型 5.1.单继承 5.2.多继承 5.2.1一般的多重继承&#xff08;非菱形继承&#xff09; 5.2…...

[答疑]经营困难时期谈建模和伪创新-长点心和长点良心

leonll 2022-11-26 9:53 我们今年真是太难了……&#xff08;此处删除若干字&#xff09;……去年底就想着邀请您来给我们讲课&#xff0c;现在也没有实行。我想再和我们老大提&#xff0c;您觉得怎么说个关键理由&#xff0c;这样的形势合适引进UML开发流程&#xff1f; UML…...

计算机基础知识

计算机网络的拓扑结构 一、OSI 7层网络模型是指什么&#xff1f; 7层分别是什么&#xff1f;每层的作用是什么&#xff1f; OSI7层模型是 国际标准化组织(ISO)制定的一个用于计算机或通信系统间互联的标准体系。 每层功能:&#xff08;自底向上&#xff09; 物理层:建立、…...

Java爬虫—WebMagic

一&#xff0c;WebMagic介绍WebMagic企业开发&#xff0c;比HttpClient和JSoup更方便一&#xff09;&#xff0c;WebMagic架构介绍WebMagic有DownLoad&#xff0c;PageProcessor&#xff0c;Schedule&#xff0c;Pipeline四大组件&#xff0c;并有Spider将他们组织起来&#xf…...

[软件工程导论(第六版)]第2章 可行性研究(复习笔记)

文章目录2.1 可行性研究的任务2.2 可行性研究过程2.3 系统流程图2.4 数据流图概念2.5 数据字典2.6 成本/效益分析2.1 可行性研究的任务 可行性研究的目的 用最小的代价在尽可能短的时间内确定问题是否能够解决。 可行性研究的3个方面 &#xff08;1&#xff09;技术可行性&…...

Mac下安装Tomcat以及IDEA中的配置

安装brew 打开终端输入以下命令&#xff1a; /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" 搜索tomcat版本&#xff0c;输入以下命令&#xff1a; brew search tomcat 安装自己想要的版本&#xff0c;例…...

【Linux详解】——文件基础(I/O、文件描述符、重定向、缓冲区)

&#x1f4d6; 前言&#xff1a;本期介绍文件基础I/O。 目录&#x1f552; 1. 文件回顾&#x1f558; 1.1 基本概念&#x1f558; 1.2 C语言文件操作&#x1f564; 1.2.1 概述&#x1f564; 1.2.2 实操&#x1f564; 1.2.3 OS接口open的使用&#xff08;比特位标记&#xff09;…...

HomMat2d

1.affine_trans_region&#xff08;区域的任意变换&#xff09; 2.hom_mat2d_identity&#xff08;创建二位变换矩阵&#xff09; 3.hom_mat2d_translate&#xff08;平移&#xff09; 4.hom_mat2d_scale&#xff08;缩放&#xff09; 5.hom_mat2d_rotate&#xff08;旋转 &…...

Python3 JSON 数据解析

Python3 JSON 数据解析 JSON (JavaScript Object Notation) 是一种轻量级的数据交换格式。 Python3 中可以使用 json 模块来对 JSON 数据进行编解码&#xff0c;它包含了两个函数&#xff1a; json.dumps(): 对数据进行编码。json.loads(): 对数据进行解码。 在 json 的编解码…...

Homebrew 安装遇到的问题

Homebrew 安装遇到的问题 例如&#xff1a;第一章 Python 机器学习入门之pandas的使用 文章目录Homebrew 安装遇到的问题前言一、安装二、遇到的问题1.提示 zsh: command not found: brew三、解决问题前言 使用 Homebrew 能够 安装 Apple&#xff08;或您的 Linux 系统&#…...

Metasploit框架基础(二)

文章目录前言一、Meatsplooit的架构二、目录结构datadocumentationlibmodulesplugins三、Measploit模块四、Metasploit的使用前言 Metasploit是用ruby语言开发的&#xff0c;所以你打开软件目录&#xff0c;会发现很多.rb结尾的文件。ruby是一门OOP的语言。 一、Meatsplooit的…...

c++容器

1、vector容器 1.1性质 a&#xff09;该容器的数据结构和数组相似&#xff0c;被称为单端数组。 b&#xff09;在存储数据时不是在原有空间上往后拓展&#xff0c;而是找到一个新的空间&#xff0c;将原数据深拷贝到新空间&#xff0c;释放原空间。该过程被称为动态拓展。 vec…...

Vue.js如何实现对一千张图片进行分页加载?

目录 vue处理一千张图片进行分页加载 分页加载、懒加载---概念介绍&#xff1a; 思路&#xff1a; 开发过程中&#xff0c;如果后端一次性返回你1000多条图片或数据&#xff0c;那我们前端应该怎么用什么思路去更好的渲染呢&#xff1f; 第一种&#xff1a;我们可以使用分页…...

计算机网络复习(六)

考点&#xff1a;MIME及其编码&#xff08;base64,quoted-printable)网络协议http是基于什么协议&#xff0c;应用层到网络层基于什么协议6-27.试将数据 11001100 10000001 00111000 进行 base64 编码&#xff0c;并得到最后传输的 ASCII 数据。答&#xff1a;先将 24 比特的二…...

Redis进阶:布隆过滤器(Bloom Filter)及误判率数学推导

1 缘起 有一次偶然间听到有同事在说某个项目中使用了布隆过滤器&#xff0c; 哎呦&#xff0c;我去&#xff0c;我竟然不知道啥是布隆过滤器&#xff0c; 这我哪能忍&#xff1f;其实&#xff0c;也可以忍&#xff0c;但是&#xff0c;可能有的面试官不能忍&#xff01;&#…...

Java创建对象的方式

Java创建对象的五种方式&#xff1a; &#xff08;1&#xff09;使用new关键字 &#xff08;2&#xff09;使用Object类的clone方法 &#xff08;3&#xff09;使用Class类的newInstance方法 &#xff08;4&#xff09;使用Constructor类中的newInstance方法 &#xff08;5&am…...

dom基本操作

1、style修改样式 基本语法&#xff1a; 元素.style.样式’值‘ 注意: 1.修改样式通过style属性引出 2.如果属性有-连接符&#xff0c;需要转换为小驼峰命名法 3.赋值的时候&#xff0c;需要的时候不要忘记加css单位 4.后面的值必须是字符串 <div></div> // 1、…...

如何将python训练的XGBoost模型部署在C++环境推理

当前环境&#xff1a;Ubuntu&#xff0c;xgboost1.7.4过程介绍&#xff1a;首先用python训练XGBoost模型&#xff0c;在训练完成后注意使用xgb_model.save_model(checkpoint.model)进行模型的保存。找到xgboost的动态链接库和头文件动态链接库&#xff1a;如果你在conda环境下面…...

About Oracle Database Performance Method

bottleneck&#xff08;瓶颈&#xff09;&#xff1a; a point where resource contention is highest throughput(吞吐量)&#xff1a; the amount of work that can be completed in a specified time. response time (响应时间)&#xff1a; the time to complete a spec…...

大连做网站哪家便宜/关键词排名客服

找了一个支付宝的网站尝试。https://memberprod.alipay.com/account/reg/index.htm 我用的是chrome,点这个小锁 如果是IE也可以在网页上右键&#xff0c;属性&#xff0c;高级&#xff0c;证书 看到如下画面&#xff0c;点击copy to file导出证书 把导出的证书打成.store 设置访…...

17网站一起做网店官网/我想创建一个网络平台

array_unique() //移除重复数据array_unshift(); //在数组的头部追加数组元素array_shift() //在数组的尾部追加数组元素if(!is_null(array_shift($array1))) //删除成功array_pop() //删除最后一个元素&#xff0c;移除失败返回NULLarray_push() //在数组尾部追加元素arra…...

wordpress默认的h1标签放在哪里/seo广州工作好吗

NEW关注Tech逆向思维视频号最新视频→【都2021年了&#xff0c;为什么还有人裸聊被骗&#xff1f;】出品&#xff5c;开菠萝财经文 | 金玙璠 吴娇颖编辑 | 魏佳11月22日&#xff0c;仅次于薇娅和李佳琦、在淘宝直播排名第三的主播雪梨&#xff0c;没有如约现身直播间&#xf…...

网站建设难度大吗/网络营销策划方案800字

1.IOC和DI概念意义和实现 :马克- to-win&#xff1a;马克 java社区&#xff1a;防盗版实名手机尾号&#xff1a;73203。马克-to-win&#xff1a;由于控制反转和依赖注入的概念比较难&#xff0c;我们拿下面这个例子来讲解概念。我们过去在学mvc时&#xff0c;都是在controller里…...

网站建设 佛山/阿里云自助建站

刚解决了一个小问题&#xff0c;在此记录一下。 测试服务器上的mysql&#xff0c;当我在本地使用工具去连接它的时候&#xff0c;报错&#xff1a;Lost connection to MySQL server at reading initial communication packet 我首先想到的是要在服务器上给所有IP授权&#xf…...

做网站哪个靠谱/汕头seo推广外包

目录循环依赖多级缓存一级缓存二级缓存当循环依赖遇上AOP三级缓存Spring三级缓存源码实现总结循环依赖 BeanFactory作为bean工厂管理我们的单例bean&#xff0c;那么肯定需要有个缓存来存储这些单例bean&#xff0c;在Spring中就是一个Map结构的缓存&#xff0c;key为beanName&…...