django项目前期准备
本文转载自 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
django项目前期准备的更多相关文章
- python django项目创建及前期准备(使用pycharm)
一.创建django项目 1.打开pycharm软件 2.点击菜单栏 File-->New Project,弹出如下对话框,如下图设置 二.基本配置 1.静态文件目录配置(用于客户端访问后台服务 ...
- 阿里云 Centos7 部署 Django 项目
前期准备 阿里云服务器 mysql数据库 已经本地运行成功的项目 阿里云服务器的环境配置 Git #代码管理 Gitlab #代码托管,要求服务器内存不低于2G,我选择放弃 Mysql #连接数据库 ...
- centos7 apache httpd安装和配置django项目
一.安装httpd服务 apache在centos7中是Apache HTTP server.如下对httpd的解释就是Apache HTTP Server.所以想安装apache其实是要安装http ...
- 终端指令操作创建Django项目
需求:通过Django创建一个用户表和权限表. 用户表包括:用户名,邮箱,密码,管理权限. 权限表包括:普通用户,管理用户,超级用户. 权限表和用户表有一对多的关系,即用户表中的每条数据对应权限表中的 ...
- mac osx 上面部署Django项目 apache+mysql+mod_wsgi
1.安装Xcode command line tools 首先,编译mysql和Homebrew需要用到Xcode command line tools,所以首先安装command line tool ...
- Apache部署django项目
在此之前,我们一直使用django的manage.py 的runserver 命令来运行django应用,但这只是我们的开发环境,当项目真正部署上线的时候这做就不可行了,必须将我们的项目部署到特定的w ...
- python——创建django项目全攻略(野生程序员到家养程序员的完美进化)
新建工程 我用pycharm写代码,所以一般就用pycharm创建django工程.右上角File-New Project.选择路径,修改项目名称,确定.就可以创建一个新的django工程. ...
- Pychram如何导入Django项目
最近在学Django,用GitHub来保存项目.但当从GitHub中clone出来后,Pycharm怎么来运行项目呢? 首先要对项目进行设置,使其能支持Django,具体设置如下: 在Pycharm中 ...
- 使用uWSGI部署django项目
先说说什么是uWSGI吧,他是实现了WSGI协议.uwsgi.http等协议的一个web服务器,那什么是WSGI呢? WSGI是一种Web服务器网关接口.它是一个Web服务器(如nginx)与应用服务 ...
随机推荐
- HBuilder git使用-分工合作
1.初始项目的创建 创建好项目,在项目名上右键,Team->共享 完成后,就实现了本地仓库的建立,另外你要注意现在创建的项目所有文件变成了红色,Git Repositories视图列出了相应的本 ...
- Egg 中 Controller 最佳实践
得益于 JavaScript 加入的 decorator 特性,可以使我们跟 Java/C# 一样,更加直观自然的,做面向切面编程.而随着 TypeScript 的成熟,类型系统也让我们增强了信心,面 ...
- JavaScript 异步编程的前世今生(上)
前言 提到 JavaScript 异步编程,很多小伙伴都很迷茫,本人花费大约一周的业余时间来对 JS 异步做一个完整的总结,和各位同学共勉共进步! 目录 part1 基础部分 什么是异步 part2 ...
- SUSE12Sp3-Nginx安装
1.安装pcre(nginx 依赖) 把安装包pcre-8.12.tar.gz复制到服务器指定目录 tar -zxvf pcre-8.12.tar.gz # 解压 cd pcre-8.12 #进入目录 ...
- [Swift]LeetCode209. 长度最小的子数组 | Minimum Size Subarray Sum
Given an array of n positive integers and a positive integer s, find the minimal length of a contigu ...
- [Swift]LeetCode223. 矩形面积 | Rectangle Area
Find the total area covered by two rectilinear rectangles in a 2D plane. Each rectangle is defined b ...
- [Swift]LeetCode495. 提莫攻击 | Teemo Attacking
In LOL world, there is a hero called Teemo and his attacking can make his enemy Ashe be in poisoned ...
- python网络-计算机网络基础(23)
一.网络简介 网络是由节点和连线构成,表示诸多对象及其相互联系. 一个人玩: 两个人玩: 多个人玩: 说明 网络就是一种辅助双方或者多方能够连接在一起的工具 如果没有网络可想单机的世界是多么的孤单 使 ...
- JVM基础系列第13讲:JVM参数之追踪类信息
我们都知道 JVM 在启动的时候会去加载类信息,那么我们怎么得知他加载了哪些类,又卸载了哪些类呢?我们这一节就来介绍四个 JVM 参数,使用它们我们就可以清晰地知道 JVM 的类加载信息. 为了方便演 ...
- 对vue源码的初步认识和理解
根据vue的官网介绍,可以得知vue是一个mvvm框架,且是响应式的.为了更深入了理解其内涵,本人以及理解实现了一个简单的mvvm学习的demo.下面分享给大家,欢迎大家一起讨论. 一.mvvm至少包 ...