本文转载自 https://blog.csdn.net/xiaogeldx/article/details/89037748
Django现状
Django开发前景
Django的厉害之处
- 在Python中,与web开发环境相关的包有13045个
- django就占了9091个,大约70%
- 在Python中,活跃的web框架多达54个,其中最活跃的有django,flask,pyramid,zope
- 最受欢迎的就是django,没有之一
- 超过5263个中大型网站使用django开发
哪些公司在使用django
- 国内:豆瓣、知乎
- 国外:Instagram、Mozilla、Pinterest、Disqus、National Geographic、NASA
版本
- 1.11(217年4月发布,支持python2.7,在2020全面推行Python3之后,将不再提供服务)
- 2.0-2.1(2.0版本,2017年12月发布,只支持Python3,将长期支持,向下兼容)
- 2.0主要在以下方面作了改进
- 简化url路由语法
- 更友好的admin站点
- auth支持更高强度的加密算法(PBKDF2)(PBKDF2简单而言就是将salted hash进行多次重复计算,这个次数是可选择的)
- runserver支持HTTP1.1
- 19.4.1发布了2.2的版本
开发流程
- 本项目我们会尽量模拟真实web开发场景来讲解项目,在大家工作之后能立刻融入到开发团队中
- 开发流程图如下图所示
需求分析
网站类型
- 本项目主要完成一个个人新闻博客类网站,用于知识分享,交友互动等
主页模块
- 轮播图
- 热门文章推荐
- 文章标签、文章列表(可滚动加载更多)
- 左侧广告展示
- 个人联系方式
用户模块
- 注册
- 短信验证码(云通信平台)
- 图片验证码
- 登录
- 用户名和手机号登录
- 个人中心页
在线视频模块
- 实现在线播放视频功能等
文件下载模块
- 实现相关资源共享,如课件笔记等
搜索模块
- 使用流行的elasticsearch搜索引擎框架,实现网站资源快速搜索定位功能
后台管理模块
- 文章标签管理
- 文章发布
- 文章管理
- 热门文章管理
- 主页轮播图管理
- 课程发布
- 文档管理
- 用户组管理
- 用户管理
项目架构
网站开发模式
- 前后端部分分离的开发模式
前端技术
- html + css + js + jquery(ajax)
后端技术
- django2.1 + mysql + redis + elasticsrarch + nginx + uwsgid