项目开发
开始开发
- 基本工程搭建
- 前端静态搭建
- Model -> DB
- 业务逻辑开发
- 前后端一起来
- ajax
前端基础架构
- base模板
- 导入通用资源
- 导入reset.css
- 导入通用资源
- 前端适配
- 推荐百分比,不推荐固定尺寸
- 适配单位
- px 底层计算使用
- em
- 默认相对于父级元素,
- 默认为1em=16px
- rem
- 相对于根级元素
- 默认大小 1rem=16px
- 弹性盒模型
- 响应式布局
- 项目中
- 屏幕宽度十分之一作为rem的基础单位
数据展示
- 建立数据
- 先建表
- Model -> SQL
- 插入数据
- 数据查询
程序调试
- 打印日志
- log
- logging
- debug
- 断点调试
- 解决稳定复现bug方式
- 统计工具
- DjangoDebugToolbar
- Django调试工具条
- 极强的调试功能
- 提供各种信息的获取
- Django调试工具条
用户激活认证
- 途径
- 邮件
- 短信
- 人工激活
- 邮件
- 发送邮件
- 收件人地址
- 发件人信息
- 用户名
- 密码
- 服务器
- 邮件服务器
- 端口
- 内容
- 点击邮件中链接就可以激活
- 链接中存在用户的唯一标识
- http://xxxx/activate/?u token=YYY
- u_token 放到缓存中作为key value=user_id
- u_token = UUID
- 标识 存在过期时间
- 标识 只能用一次
- 链接中存在用户的唯一标识
- 发送邮件
错误信息
- 先将错误信息存储起来
- 在错误显示界面获取错误信息
- 保证错误信息只能出现一次
- 获取到数据之后,直接将自己删除
购物车
- 购物车多对多的关系
- 商品
- 用户
- 订单
- 订单和以购买商品是的一对多关系
- 表关系
- 订单表
- 属于哪个用户
- 订单商品表
- 购物车里
- 地址
- 每个订单对应一个地址
- 一个地址可以对应多个订单
- 订单级联收货地址表
- 优惠卷
- 订单表
- 添加购物车
- 需要用户
- 用户未登录,跳转登录
- 需要商品
- 传递商品唯一标识
- 添加的合法性
- 此数据不存在,创建购物车数据
- 此数据存在,数据加一
- 需要用户
小技能
- js获取jquery对象
- attr
- 可以获取任意属性
- prop
- 只能获取内置属性
- attr
浏览器行为
- 重定向
- 跨域
项目中多块逻辑拥有相同的操作
- 封装一个函数
- 装饰器
- 中间件
部署
- 默认Django使用的是开发者服务器
- runserver
- 路由处理功能,动态资源处理
- 使用debug,静态资源处理功能
- 功能健壮,性能低,仅适用于开发
- runserver
- 部署不使用单一服务器
- Apache
- Nginx
- HTTP服务器
- 处理静态资源
- 反向代理
- uWSGI HTTP服务器
- gunicorn HTTP服务器
- 邮件服务器
- 流媒体服务器
- HTTP服务器