Django学习记录4——urls的简述
零之前言
我没有对Django的模式(MTV)有过多的描述,不理解可以去看看前面的视频,但是我写文章的时候,会考虑到没有进行过多的描述,所以会将这个模式给简单化小阐述一下。
这节内容,在千峰教育视频(P27~P30)里有更详细的描述
https://www.bilibili.com/video/av57516522?p=28
一.Url
Url顾名思义,你输入这个路由网址,我负责将你导向到我们的View视图函数里。而Url可以携带一些参数。
详见url的构成图片:
这个我们可以不用管,如果要获取后面的参数,一般可以用正则表达式来提取,或者有些事Get和Post带的东西,那就直接在视图里面可以获取的到。
所以带参数的Url,尽量写成Get访问,可以更方便的获取。
二.URL的反向解析
使用正则表达式,反向解析我们的Url。
好处一:可以不用修改我们的文件路径,直接修改名字就行。
好处二:可以获取Url里的参数,但是,我不用。。。
课件是这样说的:
url反向解析:
在根urls中
url(r'^views/', include('ViewsLearn.urls',namespace='view')),
在子urls中
url(r'^hello/(\d+)',views.hello,name='sayhello'),
在模板中使用
<a href="{% url 'view:sayhello' year=2017 %}">Hello</a>
year 的位置如果不指定名称按顺序算,指定名称按=算
在视图中使用
HttpResponseRedirect(reverse('view:sayhello',kwargs={}))
kwargs是字典
但是在2.0版本以上,我们一般这样使用,也是我基本上会使用的唯一语句:
from django.urls import path, re_path
from app import viewsurlpatterns = [#path("hello/", views.hello),#这个就是硬编码,唯一路径匹配re_path(r"hello/", views.hello, name="hello"),#这个是反向解析
]
所以,我们对于Url可以理解成一句话,将网址指向一个view里的函数:
re_path(r"hello/", views.hello, name="hello")
MTV模式里的一部分:用户访问→urls→views
Django学习记录4——urls的简述相关推荐
- Django学习记录-1
2019独角兽企业重金招聘Python工程师标准>>> 作为Django的初学者,记录下我的学习历程,加深一下记忆(工作中用java,所以很容易忘记),如果有写的不对的地方,还望大家 ...
- Django 学习记录
学习使用Django有一段时间了,期间也做过一些记录,希望能帮到大家! 2017-08-16 #Django python manage.py startapp Users #生产新的应用 2017- ...
- Django学习记录
粗粗看完Tango With Django,对于Django走马观花看了一遍,记录下来方便以后总结使用. 首先 创建工程 django-admin.py startproject testsite00 ...
- Django 学习记录 第一天
从这篇文章开始,来记录我的Django学习过程. Day-1 一 首先是安装Django版本的选择,我所选择的是Django1.11.为什么选择1.11呢,因为它是长期技术支持版(LTS),官方会加上 ...
- Django学习记录8
应用 应用在django中为一个独立的业务模块,可以包含自己的路由.模板.模型. 当网站有很多分区时,可将他们分为多个应用,他们之间相互隔离,均为相对独立的MTV ① 可使用命令: python ma ...
- django学习阶段总结:urls说明
配置urls: 第一步:打开项目的ursl.py的文件: 1.先导入必要类:path和include from django.contrib import admin from django.urls ...
- Django学习记录10——Django使用支付宝付款(电脑支付,手机网页支付,面对面扫码)
目录 一.注册支付宝开放平台账号 1.注册 2.创建公私秘钥 2.项目中添加公私密钥 二.生成二维码 1.安装模块等 2.模块的结构 3.电脑支付 4.手机支付 5.面对面扫码(真二维码支付) 三.小 ...
- Django学习记录3-2——Mysql数据库的使用
零之前言 在Django2.2版本上使用mysql会出现一个小问题,而在2.1.4版本就不会出现问题.所以这篇教程着重于对于django2.2版本的调教 末尾更新新库mysqlclient 一.安装驱 ...
- Django学习记录之——choices参数
choices参数 choices参数:针对表中某个可能列举完全的字段,采用choices参数例如:性别可以列举完全为男女,其他- choice参数使用sex_choices = ((1, '男'), ...
最新文章
- iOS 轻击、触摸和手势的检测
- 创建一个好的Sprint Backlog 的8个小贴士
- JS-立即执行函数(function(){...})() amp;amp; (function(){...})()
- 报告:2020年NFT总市值达5200万美元
- Gentoo Framebuffer, Bootsplash Grubsplash 指南(修改版)
- 用MFC消息映射机制自定义消息
- cartographer的一些结果
- DVWA(全级别通关教程详解)
- java程序员的待遇_想学java,一般的java程序员的薪资待遇是多少?
- 生活小常识:增发防脱发
- python自动化测试面试题大全带答案_Python自动化测试笔试面试题精选
- Lattice并购案我国FPGA发展路径
- BT面板静态文件镜像库v7.1.0
- 透视表中如何使用多条件中位数
- 《es6标准入门》 阮一峰
- Windows文件共享防火墙规则设置
- ssm基于微信小程序的电影影评交流平台系统 uni-app
- android探索宇宙app,AR研学星系探索app
- linux安装微软字体
- 计算机论文免费模板,1.计算机专业毕业论文模板