潭州课堂25班:Ph201805201 django 项目 第一课 (课堂笔记)

一、Django 现状

 

1、Django开发前景

 
1.1 老师做过的项目
 

​ 项目图展示:

 

 

CRM_2

CRM_2
 
1.2 Django的厉害之处
  • 在python中,与web开发环境相关的包有13045

  • django就占了9091个,大约70%

  • 在python中,活跃的web框架多达54个,其中最活跃的有,DjangoFlaskPyramidZope

  • 最受欢迎的就是Django,没有之一

  • 超过5263个中大型网站使用Django开发

 
1.3 哪些公司在使用Django?
 

2、版本

 

 

django version

django version
  • 1.11(2017年4月发布,支持python2.7,在2020全面推行python3之后,将不再提供服务)

  • 2.0-2.1(2.0版本,2017年12月发布,只支持python3,将长期支持,向下兼容)

  • 2.0主要在一下方面做了改进:

    • 简化url路由语法

    • 更友好的admin站点

    • auth支持更高强度的加密算法(PBKDF2)

    • runserver支持HTTP 1.1

 

二、开发流程

 

​ 本项目,我们会尽量模拟真实web开发场景来讲解项目,在大家工作之后能立刻融入到开发团队中。

 

​ 开发流程图如下图所示:

 

 开发流程图

 

三、需求分析

 

1、网站类型

 

​ 本项目主要完成一个个人新闻博客类网站,用于知识分享,交友互动等

 

2、主页模块

  • 轮播图

  • 热门文章推荐

  • 文章标签、文章列表(可加载更多)

  • 左侧广告展示

  • 个人联系方式

 

3、用户模块

  • 注册

    • 短信验证码(云通信平台)

    • 图片验证码

  • 登录

    • 用户名和手机号登录

    • 第三方登录(可能会拓展QQ、微信登录等)

  • 个人中心页

 

4、在线视频模块

 

​ 实现在线播放视频功能,用于福利课视频展示等。

 

5、文件下载模块

 

​ 实现相关资源共享,如课件笔记等。

 

6、搜索模块

 

​ 使用流行的elasticsearch收缩引擎框架,实现网站资源快速搜索定位功能。

 

7、后台管理模块

  • 文章标签管理

  • 文章发布

  • 文章管理

  • 热门文章管理

  • 主页轮播图管理

  • 课程发布

  • 文档上传

  • 账号管理

 

四、项目架构

 

1、网站开发模式

 

 前后端部分分离的开发模式

 

2、前端技术

 

​ html + css + js + jquery(ajax)

 

3、后端技术

 

​ Django2.1 + Django restframework + mysql + redis + celery(可能会拓展) + elaticsearch + nginx + uwsgi

 

技术点 说明
Mysql 双机热备、读写分离
redis session缓存、图片验证码、短信验证码
elaticsearch 站内搜索
celery 异步发送短信

猜你喜欢

转载自www.cnblogs.com/gdwz922/p/10024803.html