Django高级操作-分页-定义CVS-发送邮件

2023-06-0915:39:51后端程序开发Comments508 views字数 2495阅读模式

分页是指在web页面有大量数据需要显示,为了阅读方便在每个文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

页页中只显示部分数据。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

优点:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

1.方便阅读文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

2.减少数据提取量,减轻服务器压力。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

Django高级操作-分页-定义CVS-发送邮件文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

Paginator对像文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

负责分页数据整体的管理文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

对象的构造方法文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

Django高级操作-分页-定义CVS-发送邮件文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

Paginator属性文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

Django高级操作-分页-定义CVS-发送邮件文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

Paginator方法文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

Django高级操作-分页-定义CVS-发送邮件文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

Paginator异常exception文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

Django高级操作-分页-定义CVS-发送邮件文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

 文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

page对象 定义文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

创建具体某一页的数据的管理文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

创建对象文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

Django高级操作-分页-定义CVS-发送邮件文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

 文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

 文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

Page对象方法文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

Django高级操作-分页-定义CVS-发送邮件文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

def test_page(request):文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

 文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

page_num = request.GET.get('page',1)文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

all_data = ['a','b','c','d','e']文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

#初始化paginator文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

paginator = Paginator(all_data,2)文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

#初始化  具体页码的page对象文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

c_page = paginator.page(int(page_num))文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

return render(request,'test_page.html',locals())文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

 文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

CSV文件定义

逗号分隔值(Comma- Separated Values,CSV,有时也称为字符分隔值,因为分隔字符也可以不是逗号),其文件以纯文本形式存储表格数据(数字和文本)说明:可被常见制表工具,如excel等直 接进行读取文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

 文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

python中生成CSV文件文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

import csv文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

 文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

with open('test_csv.csv','w',newline='') as csvfile:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

 文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

writer = csv.writer(csvfile)文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

writer.writerow(['a','b','c'])文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

writer.writerow(['d','e'])文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

 文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

csv文件下载文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

Django高级操作-分页-定义CVS-发送邮件文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

 文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

内建用户系统

基本模型操作 - 创建用户文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

1、创建普通用户create_user文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

Django高级操作-分页-定义CVS-发送邮件文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

2、创建超级用户create_superuser文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

Django高级操作-分页-定义CVS-发送邮件文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

基本模型操作 - 删除用户文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

Django高级操作-分页-定义CVS-发送邮件文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

基本模型操作 -校验密码文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

Django高级操作-分页-定义CVS-发送邮件文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

基本模型操作 -修改密码文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

Django高级操作-分页-定义CVS-发送邮件文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

基本模型操作 -登陆状态文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

Django高级操作-分页-定义CVS-发送邮件文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

基本模型操作 -登陆状态校验文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

Django高级操作-分页-定义CVS-发送邮件文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

基本模型操作 -登陆状态取消文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

Django高级操作-分页-定义CVS-发送邮件文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

思考:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

内建用户表字段不够用怎么办?比如添加手机号字段。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

 文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

内建用户表 - 扩展字段文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

方案1:通过建立新表,跟内建做1对1文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

方案2:继承 内建的抽象user模型类文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

 文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

内建用户表 - 继承内建抽象类文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

Django高级操作-分页-定义CVS-发送邮件文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

Django高级操作-分页-定义CVS-发送邮件文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

Django高级操作-分页-定义CVS-发送邮件文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

 文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

文件上传

定义: 用户可以通过浏览器将图片等文件传至网站文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

场景:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

用户上传头像文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

上传流程性的文档【pdf,txt】文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

 文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

上传规范 - 前端【HTML】文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

Django高级操作-分页-定义CVS-发送邮件文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

 文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

{% csrf_token %}文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

 文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

 文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

 文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

 文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

 文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

 文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

 文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

 文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

 文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

 文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

上传规范 - 前端【Django】文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

视图函数中,用request.FILES取文件框的内容文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

file=request.FILES['XXX']文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

Django高级操作-分页-定义CVS-发送邮件文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

配置文件的访问路径和存储路径文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

Django高级操作-分页-定义CVS-发送邮件Django高级操作-分页-定义CVS-发送邮件文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

MEDIA_URL和MEDIA_ROOT需要手动绑定文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

步骤:主路由中 添加路由文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

Django高级操作-分页-定义CVS-发送邮件文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

说明:等价于做了MEDIA_URL开头的路由,Django接到该特征请求后去MEDIA_ROOT路径查找资源文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

 文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

文件写入方案1:传统的open方式文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

Django高级操作-分页-定义CVS-发送邮件文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

文件写入方案1:传统的ORM方式文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

字段:FileField(upload='子目录名')文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

Django高级操作-分页-定义CVS-发送邮件文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

Django发送邮件

业务场景文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

业务告警、邮件验证、密码找回文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

邮件相关协议 - SMTP文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

SMTP的全称是"Simple Mail Transfer Protocol",即简单邮件传输协议(25号 端口)。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

它是一组用于从源地址到目的地址传输邮件的规范,通过它来控制邮件的中转文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

属于“推送”协议文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

邮件相关协议 - IMAP文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

IMAP全称是Internet Mail Access Protocol,即交互式邮件访问协议,是一个应用层协议(端口是143)文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

用来从本地邮件客户端(Outlook Express、Foxmail、 Mozilla Thunderbird等)访问远程服务器上的邮件。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

属于“拉取”协议文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

邮件相关协议 - POP3文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

POP3是Post Office Protocol 3的简称,即邮局协议的第3个版本,是TCP/IP协议族中的一员(默认端口是110)。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

本协议主要用于支持使用客户端远程管理在服务器上的电子邮件文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

属于“拉取”协议文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

IMAP   VS  POP3文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

两者均为“拉取”型协议,负责从邮件服务器中下载邮件文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

IMAP 具备摘要浏览功能,可预览部分摘要,再下载整个邮件文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

IMAP 为双向协议,客户端操作可反馈给服务器文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

 文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

POP3必须下载全部邮件,无摘要功能文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

POP3为单向协议,客户端操作无法同步服务器文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

Django高级操作-分页-定义CVS-发送邮件文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

Django发邮件文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

Django中配置邮件功能,主要为SMTP协议,负贡发邮件文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

原理:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

给Django授权一-个邮箱文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

Django用该邮箱给对应收件人发送邮件文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

django.core.mail封装了电子邮件的自动发送SMTP协议文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

Django配置文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

#邮件相关配置文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

EMAIL_HOST = 'smtp.qq.com' # 腾讯QQ邮箱 SMTP 服务器地址文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

EMAIL_PORT = 25  # SMTP服务的端口号文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

EMAIL_HOST_USER = '输入QQ邮箱'  # 发送邮件的QQ邮箱文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

EMAIL_HOST_PASSWORD = '输入授权码'  # 在QQ邮箱->设置->帐户->“POP3/IMAP......服务” 里得到的在第三方登录QQ邮箱授权码文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

函数调用文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

Django高级操作-分页-定义CVS-发送邮件文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

测试案例:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

Django高级操作-分页-定义CVS-发送邮件文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

等待几秒钟就可以收到测试邮件文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

Django高级操作-分页-定义CVS-发送邮件文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

 文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

练习 - 邮件告警文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

Django高级操作-分页-定义CVS-发送邮件文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

利用中间件实现文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

class ExceptionMW(MiddlewareMixin):文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

 文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

def process_exception(self, request, exception):文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

 文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

print(exception)文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

print(traceback.format_exc())文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

 文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

mail.send_mail(文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

subject='mysite7报错啦~', message=traceback.format_exc(),文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

from_email='输入QQ邮箱',recipient_list=settings.EX_EMAIL)文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

return HttpResponse('---对不起 当前网页有点忙')文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

setting.py文件加上这条语句文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

EX_EMAIL = ['输入QQ邮箱']文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

Django高级操作-分页-定义CVS-发送邮件文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

 文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

 文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

 文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

 文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html

文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/46265.html
  • 本站内容整理自互联网,仅提供信息存储空间服务,以方便学习之用。如对文章、图片、字体等版权有疑问,请在下方留言,管理员看到后,将第一时间进行处理。
  • 转载请务必保留本文链接:https://www.cainiaoxueyuan.com/bc/46265.html

Comment

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定