python视频笔记31(djang高级运用)

该博客围绕Django展开,介绍了静态文件(如css、js等)的使用,需配置setting文件并通过标签调用;阐述了中间件,它是介入Django请求和响应的Python类,要自定义并配置;还提及上传图片时数据存于request.FILES,需配置相关文件;最后介绍了分页中Paginator和Page的关系。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

静态文件

css ., js , 图片 , json文件 , 字体文件 等

使用:
配置setting文件
在这里插入图片描述
目录结构
在这里插入图片描述

index.html
在这里插入图片描述

127.0.0.1:8000
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190524115318374.png
使用标签调用
index.html在这里插入图片描述

中间件

轻量级底层的插件可以介入Django的请求和响应

本质就是一个Python类
方法:

__init__ 
	不需要传参,服务器响应第一个请求的时候自动调用。用于确认是否启动该中间件
proccess_request(self,request)

	在执行视图之前被调用(分配URL匹配视图之前)每个请求上都会调用返回None 或者HttpResonse对象
	
process_view(self,request , virw_function,view_args, view_kwargs)
	调用视图之前执行,每个请求都会调用,返回None或者HttpResponse对象
	
process_template_response(self,request,reponse)
	在视图刚好执行完后调用,每个请求都会调用,返回None或者HttpResponse对象
	使用render
	
process_response(self,request,reponse)
	所有的响应返回浏览器之前,每个请求都会调用,返回HttpResponse对象
	
process_exception(self,request,exception)
	当视图抛出异常时调用,返回一个HttpResponse对象

自定义中间件
在这里插入图片描述
配置settings.py
在这里插入图片描述
127.0.0.1:8000/?a=1
在这里插入图片描述

上传图片

文件上传时,文件数据存储在request.FILES属性中 ;

存储路径
在这里插入图片描述
配置settings
在这里插入图片描述
upfile.html
在这里插入图片描述

urls.py
在这里插入图片描述
views.py
在这里插入图片描述
127.0.0.1:8000/upfile
在这里插入图片描述
在这里插入图片描述
发现已经成功上传到upfile目录中
在这里插入图片描述
其他文件也可以上传

分页

对象:

Paginator
	创建对象
		格式:Paginator(列表,整数)
		返回值:返回一个分页对象
	属性
		count:对象属性
		num_pages:页面总数
		page_range([1,2,3,4,5] 从1 开始
	
	方法
		方法:page(num)  获得page对象 如果提供的页码不存在会抛出一个异常'invalidPage'
	异常
		incalidPage
			当向page()传递的是一个无效的页码抛出
		PageNotAnInsager
			当向page传递的不是一个整数时
		Empty,Page 
			当向page传递一个有效值,但是该页面上没有数据时抛出
	
Page
	调用paginator对象的page方法,返回page对象,不需要手动构造 
	属性:
		object_list:返回当前页对象的的列表 
		number:返回当前页是第几页,从1开始 
		paginator:当前页对应的paginator对象 
	方法
		has_next():
			如果有下一页返回True 
		has_previous():
			如果有上一页返回True 
		has_other_pages():
			判断是否又上一页或下一页
 		next_page_number():
 			返回下一页得页码,不存在抛出invalidPage异常
 		previous.page_number()
 			返回上一页得页码,不存在抛出invalidPage异常
 		len():
 			返回当前页得数据个数
 		

Paginator 和Page关系:在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值