BBS-个人博客项目的完整搭建
项目开发流程
一、项目分类
现在互联网公司需要开发的主流web项目一般分为两类:面向互联网用户,和公司内部管理。
面向互联网用户: C(consumer)端项目
公司内部管理:B(business)端项目
还有一类web应用,基本采用基于角色的权限控制,不同的员工在这套系统中拥有不同的权限,适用于公司内部管理。
# 基于权限的后台关系系统
RBAC权限管理系统
二、项目开发模式分类
# 最常见的两类为瀑布开发模式和敏捷开发模式。
1、瀑布开发模式
将所有功能全部写完后一次性交给测试排查BUG,再返回一次性解决
2、敏捷开发模式
每开发一个或多个功能就交给测试排查BUG,多次返回解决BUG
3、项目开发流程
-立项
-需求分析
-原型图(产品画的)
-切图
-技术选型,数据库架构设计
-前后端协同开发
-上线测试服务器联调
-测试
-修改bug
-上线运行
BBS多人博客项目基本功能和需求
# 开发任意的项目第一个阶段就是弄清楚你要开发什么功能
# 一个项目最重要的是表结构的设计,大部分时间都是用来设计表.
# 你在企业中对于一个完成的项目写代码的时间大概有个30%,其余的时间都用来做铺垫
比如:产品需求的确定,技术选型,数据库设计...
# 注册登录功能
"""
1. 用户表(你可以自己创建,也可以使用auth_user表)
扩展auth_user表
phone
avatar:用来存储头像的地址
create_time:用户注册的时间
...
blog_id = OneToOneField(to='blog')
2. 站点表(blog)
站点名称
站点标题
站点样式:存的是css的路径
3. 分类表(cate)
分类名称
blog = ForeignKey(to='blog')
4. 标签表
标签名称
blog = ForeignKey(to='blog')
5. 文章表(*******************article)
文章标题
文章摘要
文章内容
文章发表时间
# 1. 通过文章id去点赞表或者评论表中查询
# 优化
# 2. 在文章表中增加子弹
up_num 1
down_num 1
comment_num 4
# 外键关系子弹
cate = ForeignKey(to='cate')
tag = ManyToManyField(to='tag')
blog = ForeignKey(to='blog')
6. 点赞点踩表
谁给哪篇文章什么时间点了赞还是踩
user ForeignKey(to='user')
article ForeignKey(to='article')
is_up 0/1
create_time
id user_id article_id is_up create_time
1 1 1 0 ‘’
2 2 1 1 ‘’
7. 评论表(comment)
谁给哪篇文章在什么时间评论了什么内容
user ForeignKey(to='user')
article ForeignKey(to='article')
content
create_time
parent_id ForeignKey(to='comment')
parent_id ForeignKey(to='self')
#自关联
id user_id article_id content create_time parent_id
1 1 1 0 ‘’ 0
2 2 1 1 ‘’ 1
3 2 1 1 ‘’ 2
子评论!!!
评论评论的评论!!!
根评论
1. Python是世界上最好的语言
1.1 PHP是世界上最好的语言
1.2 Java是世界上最好的语言
无限极分类
category表
id cate_name pid
1 手机/数码 0
2 电脑/办公 0
...
20 手机通讯 1
21 运营商 1
...
50 5G手机 20
51 手机 20
...
100 128G/5G 50
"""