Django边学边记—视图
一、 url
(一)配置
- 在项目/settings.py中通过ROOT_URLCONF指定url配置
ROOT_URLCONF = 'XXXX.urls'
- 打开 项目/urls.py 配置
(二)语法
- 语法一:包含,将应用的urls配置到应用内部
- 语法二:定义,指定正则和视图的对应关系
url(正则,'视图名称')
(三)传参
- 一是在正则表达式中直接使用小括号分组,通过位置参数传递给视图
- 二是在正则表达式部分为组命名方式传参,?P部分的名称要与视图函数参数名相同
二、视图
(一)概念
- 视图就是python中的函数,一般被定义在“应用/views.py”文件中
- 视图的第一个参数必须为HttpRequest实例,还可能包含url中传进的参数
- 视图必须返回一个HttpResponse对象或子对象作为响应
(二)HttpReqeust对象的属性
- path:一个字符串,表示请求的页面的完整路径,不包含域名
- method:一个字符串,表示请求使用的HTTP方法,常用值包括:'GET'、'POST'
- 在浏览器中给出地址发出请求采用get方式,如超链接
- 在浏览器中点击表单的提交按钮发起请求,如果表单的method设置为post则为post请求
- encoding:一个字符串,表示提交的数据的编码方式
- 如果为None则表示使用浏览器的默认设置,一般为utf-8
- 这个属性是可写的,可以通过修改它来修改访问表单数据使用的编码,接下来对属性的任何访问将使用新的encoding值
- GET:一个QueryDict对象,包含get请求方式的所有参数
- POST:一个QueryDict对象,包含post请求方式的所有参数
- FILES:一个QueryDict对象,包含所有的上传文件
- COOKIES:一个标准的Python字典,包含所有的cookie,键和值都为字符串
- session:一个既可读又可写的QueryDict对象,表示当前的会话,只有当Django 启用会话的支持时才可用
(三)QueryDict对象
- 定义在django.http.QueryDict,与python字典不同,QueryDict类型的对象用来处理同一个键带有多个值的情况
- 方法get():根据键获取值:如果一个键同时拥有多个值将获取最后一个值;如果键不存在则返回None值,可以设置默认值进行后续处理 dict.get('键',默认值)
- 方法getlist():根据键获取值,值以列表返回,可以获取指定键的所有值,如果键不存在则返回空列表[],可以设置默认值进行后续处理 dict.getlist('键',默认值)
Django边学边记—视图的更多相关文章
- Django边学边记——中间件
特点 Django中的中间件是一个轻量级.底层的插件系统,可以介入Django的请求和响应处理过程,用于全局修改Django的输入或输出. 每个中间件组件负责做一些特定的功能.中间件全部注册在sett ...
- Django边学边记—模板
功能 产生html,且不仅仅是一个html 包含: 静态内容:html,css,js 动态内容:模板语言 使用 一般使用 Django中提供的简写函数render调用模板 render(request ...
- Django边学边记—静态文件
概念 项目中的CSS.图片.js都是静态文件 一般会将静态文件放到一个单独的目录中,以方便管理 在html页面中调用时,也需要指定静态文件的路径,Django中提供了一种解析的方式配置静态文件路径 静 ...
- Django边学边记—模型查询
查询集 两大特性 惰性执行:创建查询集不会访问数据库,直到调用数据时,才会访问数据库,调用数据的情况包括迭代.序列化.与if合用 缓存:查询集的结果被存下来之后,再次查询时会使用之前缓存的数据 返回列 ...
- Django边学边记—新手Django建项目各流程细节
一.准备虚拟环境 1)安装 virtualenv pip install virtualenv 2)virtualenvwrapper pip install virtualenvwrapper-wi ...
- Django边学边记--状态保持(cookie和session)
Cookie 概念: Cookie,也叫Cookies,指某些网站为了辨别用户身份.进行session跟踪而储存在用户本地终端上的数据(通常经过加密),好比会员卡或餐票. 特点: Cookie是由服务 ...
- Django基础(路由、视图、模板)
目录导航 Django 路由控制 Django 视图层 Django 模版层 Django 路由控制 URL配置(URLconf)就像Django 所支撑网站的目录.它的本质是URL与要为该URL调用 ...
- Django - 将URL映射到视图
URLconf 就像是 Django 所支撑网站的目录.它的本质是 URL 模式以及要为该 URL 模式调用的视图函数之间的映射表.你就是以这种方式告诉 Django,对于这个 URL 调用这段代码, ...
- 第三百零五节,Django框架,Views(视图函数),也就是逻辑处理函数里的各种方法与属性
Django框架,Views(视图函数),也就是逻辑处理函数里的各种方法与属性 Views(视图函数)逻辑处理,最终是围绕着两个对象实现的 http请求中产生两个核心对象: http请求:HttpRe ...
随机推荐
- Pikachu-RCE模块
一.概述 1.1 RCE漏洞 可以让攻击者直接向后台服务器远程注入操作系统命令或者代码,从而控制后台系统. 1.2 远程系统命令执行一般出现这种漏洞,是因为应用系统从设计上需要给用户提供指定的远程命令 ...
- Java虚拟机漫漫学习路,我终于悟了
毕业8年,前5年的职业规划是做计算广告,后来感觉计算广告这一行更注重的是业务而非技术,而自己的性格更适合做技术,所以毅然决然的辞职, 全职1年半时间写了2本关于Java编译器与虚拟机的书,今年年初来到 ...
- ThreadPoolExecutor(线程池)的参数
构造函数 public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, TimeUnit u ...
- dataTemplate 的使用之listView
<Window x:Class="WpfApplication1.Window39" xmlns="http://schemas.microsoft.com/win ...
- SpringBoot使用@Scheduled创建定时任务
定时任务一般会存在中大型企业级项目中,为了减少服务器.数据库的压力往往会采用时间段性的去完成某些业务逻辑.比较常见的就是金融服务系统推送回调,一般支付系统订单在没有收到成功的回调返回内容时会持续性的回 ...
- 嵌入式Linux的启动过程
1.了解 Linux 最初是由瑞典赫尔辛基大学的学生 Linus Torvalds在1991 年开发出来的,之后在 GNU的支持下,Linux 获得了巨大的发展.虽然 Linux 在桌面 PC 机上的 ...
- tomcat Debug 启动
eclipse有web工程,将打包为war包(export -> War file) 将打包好的war 包放在tomcat 的webapps下面: 配置debug: 参考来自 http://bl ...
- ProjectEuler 004题
1 #include<iostream> 2 using namespace std; 3 4 int main() { 5 bool isPalindromic (int num); 6 ...
- Ubuntu 16.04LTS安装flashplayer
转载自http://www.linuxdiyf.com/linux/20084.html 在安装Ubuntu 16.04LTS后,播放有视频的网页时,总提示你要安装缺失的插件,在 ubuntu 系统下 ...
- MySQL基础——常用命令
一.连接MySQL 1.启动mysql首先在打开cmd窗口,输入mysql -uroot -p ,然后空格进入MySQL控制台,MySQL的提示符是: mysql>. mysql -uroot ...