标签:校验 存储 网络 roo 组件 ase 安装 view 编程
实验楼
1、基础课
2、ubuntu开
发环境初始化- 1、安装VMware 15
- 2、安装Ubuntu 18.04
- 3、Ubuntu设置静态IP
- 4、Ubuntu root用户登录
- 5、Ubuntu安装Pycharm并激活
- 6、安装mysql
- 7、安装redis
- 8、安装使用virtualenvwrapper
3、Linux基础
- 1、linux常用命令
- 2、ubuntu开启sshd服务
- 3、ubuntu安装软件方法
day02
1、Django基础
- 1、web项目工作流程
- 2、Django介绍
- 3、Django设计模式(MVC/MTV)
- 4、虚拟环境
- 5、post、put、delete 获取数据
- 6、响应
2、初始化项目结构
- 1、初始化项目结构
- 2、创建Django项目
- 3、创建User模型
- 4.重写Django默认认证用户模型
3、Django路径问题
- 1、绝对路径
- 2、导包路径
- 3、模块路径(user.User)
4、ModelViewSet
+ModelSerialzers1、ModelViewSet
1、DRF初始化
- 1、安装DjangoRestFramework
- 2、settings中注册rest_framework
- 3、settings中配置rest_framework
2、ModelViewSet用法
- 1、认证
- 2、权限
- 3、限流
- 4、分页
- 5、过滤
- 6、排序
- 7、版本
- 8、序列化
4、接口测试
- 1、认证
- 2、权限
- 3、限流
- 4、分页
- 5、过滤
- 6、序列化
2、ModelSerializer
1、数据校验
- 1、独立校验器(validators=[address_validate])
- 2、单一字段验证(validate_字段名)
- 3、多字段校验(validate)
2、序列化器
- 1、model
- 2、fields
- 3、exclude
- 4、read_only_fields
day03(加)
1、APIview+serializers
1、APIview
1、APIView用法
- 1、认证
- 2、权限
- 3、限流
- 4、分页
- 5、过滤
- 6、排序
- 7、版本
- 8、序列化
2、测试
2、serializer
1、数据校验
- 1、独立校验器(validators=[address_validate])
- 2、单一字段验证(validate_字段名)
- 3、多字段校验(validate)
2、序列化器
1、普通字段序列化
- name = serializers.CharField(min_length=3,max_length=20)
2、一对多字段序列化
- ut = serializers.CharField(source=‘ut.type_name‘)
3、多对多字段序列化
- gp = serializers.SerializerMethodField(read_only=True)
4、自定义字段
- xxx = serializers.CharField(source=‘name‘,required=False)
2、APIView和ModelViewSet使用场景
1、ModelViewSet
- 1、主要应用于数据接口
- 2、对数据库基本增删改查
- 3、在视图函数中没有很多业务逻辑要处理的
2、APIView
- 1、APIView主要应用于业务接口
- 2、支付宝支付、三方登录、七牛云上传
3、RESTful接口规范
1、什么是Restful规范
2、RESTful API具体规范
1、面向资源编程
- 1、路径,视网络上任何东西都是资源,均使用名词表示
- 2、https://api.example.com/v1/zoos
2、请求方法规范
- 1、get
- 2、post
- 3、put
- 4、delete
3、状态码
1、2xx(请求成功)
- 1、200 请求成功
- 2、201创建成功
2、3xx(重定向)
- 1、301永久重定向
- 2、临时重定向
3、4xx(客户端错误)
- 1、401 表示用户没有权限(令牌、用户名、密码错误)
- 2、403 Forbidden表示用户得到授权但是访问是被禁止的
- 3、404 NOT FOUND
4、5xx(服务端错误)
- 1、500服务器内部错误
- 2、501服务器不支持请求的功能,无法完成请求
4、Model各种操作
1、创建表
- 1、Meta属性
- 2、常用字段
- 3、字段参数
2、一对多
3、多对多
4、一大波model操作
5、F和Q查询
6、aggregate和annotate聚合函数
day04
1、vue基础
1、初始化Vue项目
- 1、vue init webpack deaxios
2、封装axios
1、http/index.js
1、实例化axios对象
- 1、请求地址(baseURL)
- 2、请求超时时间(timeout)
- 3、请求头(header)
2、添加拦截器
- 1、请求拦截器
- 2、响应拦截器
3、封装get/post/put/delete请求
2、http/apis.js
- 1、import { get, post,put,delete } from ‘./index‘
- 2、export const login = (params, headers) => post("/user/login/", params, headers)
2、django设置跨
域并开发测试接口1、Django跨域原理
2、DJango CORS设置
3、登录测试接口
- 1、创建Login.vue页面
- 2、Login.vue中导入并发送axios请求
3、使用axios
测试登录功能1、页面
- 1、创建一个Login.vue页面
- 2、写Vue端路由
2、axios
发送请求- 1、src\http\apis.js配置后端请求
- 2、Login.vue页面导入模块并测试
4、组件
1、组件定义
- 1、独立的,完整的(包含html,css,js等),可以直接拿来用的
2、父组件显示子组件内容
1、导入:
- import Child from ‘@/views/demo/Child‘
2、注册:
- components: { Child, }
3、引用:
-
2、父组件向子组件传值
- 1、父组件(:data=‘msg‘)
- 2、子组件(props: [‘data‘])
3、子组件向父组件传值
- 1、父组件(@changeMsg=‘change‘)
- 2、子组件(this.$emit(‘changeMsg‘, ‘子组件信息...‘))
day05
1、model建表规范
2、model查询
- https://www.cnblogs.com/xiaonq/p/7978409.html
3、原生SQL
2、项目课
day01
1、Xmind架构图
1、前端
- 1、前台页面(用户使用页面)
- 2、后台管理系统(管理员使用页面)
2、后端
- 1、后端功能分析
- 2、运维架构
- 3、工程目录结构
2、表关系图
- 1、用户模块
- 2、课程模块
- 3、评论模块
- 4、商品模块
3、数据字典
4、接口文档规范
day02
1、初始化项目结构回顾
2、ModelViewSet+ModelSerializer回顾
3、JWT原理
1、cookie使用和优缺点
- 1、cookie原理
- 2、session使用原理
- 3、session使用缺点
- 4、常用解决session方法
2、JWT介绍
1、jwt原理
2、jwt数据结构
- 1、jwt头
- 2、载荷
- 3、签名
3、jwt核心
4、jwt特点分析
- 1、服务器端需要存储token
- 2、服务器端相当于一把锁,这把锁能打开token是真的,否则token就是假的
4、JWT安装与配置
1、安装JWT
- 1、pip install djangorestframework-jwt==1.11.0
2、settings配置
- 1、配置jwt载荷中的有效期设置
- 2、REST_FRAMEWORK中配置使用JWT认证
3、syl/urls.py注册路由
- 1、obtain_jwt_token登录
- 2、refresh_jwt_token刷新token
5、编写注册接口
1、编写注册接口
- 1、username,password,email
2、重写Django认证
- 1、settings中指定:AUTHENTICATION_BACKENDS = [‘user.utils.EmailAuthBackend‘]
- 2、EmailAuthBackend类的书写
3、注册登录接口测试
day03
1、图片验证码接口
1、django缓存设置
1、安装 pip install django-redis==4.12.1
2、settings中配置CACHES
- uuid为Key,验证码为Value存入Redis
2、新建verifications应用
- 1、图片验证
- 2、短信验证
- 3、邮箱验证
3、图片验证码captcha使用
4、动态生成图片验证码接口
5、接口测试
2、vue图片验证码
- 1、动态生成uuid
- 2、以uuid为Key发送到后端换取图片验证码
3、短信验证接口
1、容联云注册账号
2、测试容联云发送短信
3、将容联云发送短信功能融入项目
- 1、检查前端传过来的参数
- 2、检查图片验证码是否合法
- 3、发送并存储到redis,防止短时间内多次发送
4、前端调试短信发送功能
5、pipline优化redis命令执行
4、redis的pipeline
- 1、pipeline原理
- 2、测试pipeline性能
day04
1、celery原理与组件
1、celery介绍
2、celery组件
- 1、生产者
- 2、broker存放任务(redis/rabbitMQ)
- 3、消费者(worker)
- 4、backend存放结果(redis/rabbitMQ/Mysql)
- 5、beat(调度器)
2、celery配置与基本使用
- 1、安装: pip install celery
- 2、celery/main.py配置
3、celery发送短信接口
- 1、在celery/main.py中写一个发送短信的函数
- 2、verifications应用的视图函数中调用异步发送短信
4、vue发送短信逻辑
5、检查用户名是否使用接口
6、vue检查用户名是否使用
7、后端注册接口完善
- 1、username、phone、password、code短信验证码
day05
1、微博三方登录原理讲解
- 1、微博三方登录流程
- 2、三方用户绑定流程
- 3、oauth认证原理
2、微博账号注册
3、生成微博授权URL接口
4、vue后端微博授权URL
5、微博回调接口
6、vue微博回调空页面
7、绑定微博用户接口
8、vue绑定用户页面
day06
1、课程模块表结构分析
- 类别表
- 标签表
- 课程表
- 章节表
- 关注表
- 我的课程
2、创建课程app
3、增加抽象基类Base
4、设计课程五张表
- 1、课程表
- 2、分类表
- 3、标签表
- 4、章表
- 5、节表
5、增加media文件配置
1、syl/settings.py中配置文件路径
- 1、MEDIA_URL = ‘/media/‘
MEDIA_ROOT = os.path.join(BASE_DIR, ‘media‘)
- 1、MEDIA_URL = ‘/media/‘
2、syl/urls.py添加静态资源路径
3、在浏览器中测试访问图片
6、课程主页面三个接口
1、获取课程的接口
- 加上课程关注信息
2、获取分类的接口
3、获取标签接口
7、课程关注
- 1、用户添加课程关注接口
8、章节页面接口
- 1、获取具体课程的章节信息接口
9、播放接口
- 1、获取具体课程的视频播放地址接口(节表)
day07
1、七牛云注册于基本使用
2、使用七牛云进行视频点播原理
- 1、django后端只负责生成token
- 2、vue端获取token上传视频到七牛云
- 3、vue端把七牛云返回的视频播放地址发送给django
3、后端生成七牛云token接口
4、七牛云上传JS方法实现
5、七牛云上传django端实现
6、上传视频成功后把七牛云返回的视频地址信息存储到mysql
7、视频防盗链(待完成)
8、课程评论
- 1、添加评论接口
- 2、获取评论接口
day08
1、商品模块表结构分析
2、创建商品app
3、通过课程查询对应的商品接口
4、支付宝支付原理
5、创建订单并生成支付链接
6、订单支付完成后回调接口
- 1、修改订单状态为“已支付”
- 2、存储支付宝返回的支付单号
day09
1、RBAC角色权限管理
2、重写django权限模块
3、课程播放接口权限限制
- 1、免费课程
- 2、会员免费课程
- 3、收费课程
4、路径模块两张表设计
5、路径页面接口开发
- 1、获取所有路径接口
- 2、获取指定路径下的所有阶段和课程信息的接口
day10
1、倒排索引原理
1、搜索引擎原理
- 1、搜索引擎中存储的是倒排索引,就是分好的词,和词语文章的关联
2、创建倒排索引原理
- 1、django中提供的是结构化数据
- 2、haystack把结构化转非结构化
- 3、搜索引擎把非结构化转分词
2、课程全文检索接口
1、haystack介绍
- 1、安装
- 2、原理介绍
2、haystack配置使用
1、syl/settings.py配置
- 1、注册haystack
- 2、配置template
- 3、配置haystack
2、在应用下创建索引文件
3、指定索引模板路径
4、修改为jieba分词分析器
5、课程全文检索视图函数
6、syl/urls.py添加路由
7、命令构建倒排索引
- python manage.py rebuild_index
3、全文检索接口测试
3、docker安装与基本使用
- 1、docker安装
- 2、docker部署ES
4、使用ES替代whoosh,全文检索
day11
1、wsgi_uwsgi_niginx理论部分
1、一些重要概念
- 1、web容器
- 2、WSGI
- 3、uWSGI
- 4、Nginx
- 5、Django
2、nginx+Uwsgi+Nginx部署
- 1、方案特点分析
- 2、Django+Uwsgi方案特点
- 3、nginx和uWSGI
2、Django+uWSGI+nginx生产环境部署
- 1、django的settings配置
- 2、安装uwsgi配置uWSGI
- 3、安装配置nginx
- 4、uwsgi和nginx启动、关闭、查看日志
3、docker+nginx反向代理部署项目
day12
- 1、mysql主从搭建
- 2、mysql主从项目实战
day13
- 1、项目回顾
实验楼流程
标签:校验 存储 网络 roo 组件 ase 安装 view 编程
原文地址:https://www.cnblogs.com/wyx-zy/p/13904000.html