Django-2 实例: 搭建网站流程分析及简单配置
网站搭建的简单流程分析
一、主要流程
1. 设计原型
1. 业务流程
2. 功能模块
3. 前端布局
4. 后端模型
......
2.开发------测试------部署上线
二、实例:个人博客网站
先期准备:
1. 项目管理 : IDE(开发环境)、本地虚拟环境(可以不用)、Git/GitHub
2.前端开发:
html + javascript + css \ jQuery\Bootstrap\ajax
3. 后端开发:
Django框架:一个web应用框架,用来搭建web服务器
4. 数据库和服务器:
MySQL、Linux
将网站部署到服务器
正式开始搭建个人博客网站
1. 简单构建:
功能模块:
1. 博客
博文、博文分类、博客标签、作者、博文写作时间、博文更新时间、用户搜索
......
2. 评论
.....
3. 点赞
......
4. 阅读
......
5. 用户
......
2. 开启本地虚拟环境
优点:1. 避免多个项目之间python库版本需求的冲突 2. 方便导出python库列表
1. 安装虚拟环境
pip install virtualenv
2. 使用方法
创建: virtualenv + env_name
启动: source env_name / bin / activate (Linux下启动)
Scripts / activate (windows下,进入env_name下,启动)
退出: deactivate
3. 安装Django框架,创建 项目mysite 及项目下的第一个App应用:博客
在虚拟环境中安装Django: pip install Django==? (输入想要安装的Django版本)
1. 创建Django项目
Django-admin startproject mysite(项目名)
2. 创建App
python manage.py startapp blog(App名:博客)
4. 在Django的 ‘模型文件’ 中创建 “类”和“类变量”,然后同步这些结构到数据库。(一个“类”, 对应一类数据库中的表,“类变量”为数据表中的字段名。此处以“博文”、“博文分类”为例)
使用IDE打开项目代码(pycharm、sublime3...)
1. 编辑App应用blog中的models.py文件,添加一张表结构 (models.py文件操作)
示例:
class Blog(models.Model): (博文) #表名
blog_connet = models..... (博文内容) #字段名
blog_type = models...... (博文类型)
blog_title = models...... (博文标题)
blog_author = models...... (博文作者)
class BlogType(models.Model): (博文分类) #表名
type_name = models..... (类型名称) #字段名
2. 创建超级管理员
python manage.py createsuperuser
3. 创建迁移文件(记录此时此刻 模型文件的数据格式和内容)
python manage.py makemigrations
4. 将迁移文件中的内容同步到数据库中,从而生成对应的数据结构
python manage.py migrate
5. 添加此blog功能模块中现有的模型到后台管理界面,并控制其显示内容等(admin.py文件操作)
1. from .models import Blog, BlogType (导入blog模块models文件中现有的两个模型)
2. 创建“类”,来控制此模型在后台的显示,注册模型
@admin.register(Blog) #注册模型
class BlogAdmin(admin.ModelAdmin):
list_display = ('id' , 'blog_title' , 'blog_type' , 'blog_connet , ..... ') #控制显示
2. 运行Django程序,访问测试
1. python manage.py runserver ip:port
2. 用户在浏览器访问
1. ip:port (django默认首页)
2. ip/admin (后台管理界面)