1. 项目结构
- 导师后台
- 管理后台
- 主站(我负责)
2. 主站的功能
- vue
- 一点兼职, 课程列表、详细、深科技
- rest api
- 课程系列
- 列表
- 详细
- 推荐课程
- 章节、课时
- 常见问题
- 评论
- 深科技
- 文章列表
- 详细
- 评论
- 赞
- 收藏
- 我的中心
- 个人帐户、我的资料
- 订单
- 课程中心
- 购买流程
- 加入购物车
- 去结算
- 当即支付
- 其余
- 关于咱们
- 练习咱们
- 意见反馈
知识点
技术点
- rest framework框架
- 认证,用于用户认证。
- 若是用中间件实现,有什么区别?
- 时机不一样。
- 认证逻辑无需实现。
- 返回值:
- None
- 异常
- (user,token)
- 分页
- 视图
ModelViewSet
queryset = xxx
def get_queryset():
assert ...
- 序列化
- __new__
- source
- Method
- 跨域
- jsonp
- cors
- redis
- 为何用redis作购物车?
- 频繁操做
- 中间状态
- 数据放入内容,快。
PS:
- 也能够搞sessionsession
- redis分布式锁
- 支付宝支付接口
- RSA
- 金额:小数点后两位
- 两个URL
- 支付宝公钥+商户私钥
- 微信消息推送
- 企业号,服务号
- 普通消息、模板消息、
- 经过js生成二维码
- 惟一标识获取到
- ContentType
- 参考:django 中间件 、rest 配置
importlib
getattr
示例:发送消息提醒
- django配置文件
- ORM操做
- only
- defer
- exclude
- filter(id__in=[1,2,3])
- git协同开发
- csrf
- 中间件
- 装饰器
@csrf_exempt
def index(request):
pass
csrf_exempt(view)
- vue.js 基本命令
- router拦截器
- ajax
- jQuery
- axios
本质:XMLHttpRequest对象实现。
var xhr = XMLHttpRequest();
// 定义回调函数
xhr.onreadystatechange = function(){
if(xhr.readyState == 4){
// 已经接收到所有响应数据,执行如下操做
var data = xhr.responseText;
console.log(data);
}
};
// 指定链接方式和地址----文件方式
xhr.open('POST', "/test/", true);
// 设置请求头
xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset-UTF-8');
// 发送请求
xhr.send('n1=1;n2=2;');
- 请求头Content-Type
- request.POST
- 'Content-Type', 'application/x-www-form-urlencoded;
- 'n1=1&n2=2;'
- request.body
- json
- vuex
- vue-cookies