数据库课程设计 - Flow Blog

摘要

当今,随着Internet的迅速普及以及网络技术的发展,人们的生活也越来越离不开这些东西,忙碌的生活,对着荧光屏幕的一整天,或许有效的记录可以在我们的生命中留下重要的点滴。这样的情况下,一个在线版的个人博客系统就显得非常有必要了。

本文论述了个人博客的特点,以及对其系统设计进行分析,并给出其功能以及数据库的设计。


关键词

Python、MySQL、django、web应用程序开发、网站建设、CMS内容管理系统


系统概述

背景

博客最初始的名称是Weblog,由weblog两个单词组成,按照字面意思就为网络日记,后来喜欢新名词的人把这个词的发音故意改了一下,读成we blog,由此,blog这个词被创造了出来。

Weblog就是在网络上发布和阅读的流水记录,通常称为“网络日志”。

简言之,Blog就是以网络作为载体,作者可以迅速便捷地发布自己的心得感想,并且可以及时有效的与他人进行交流。另外,一个Blog系统某种意义上来讲也是博主的个性化体现,我们可以通过不同的文章去了解作者,去感受作者想要描绘的思想。

一个Blog其实就是一个网站,它里面通常包含很多篇文章,所有的文章按照时间倒序排列,而读者则可以针对阅读过的文章发出评论与作者进行交流。许多Blog文章都是作者心之所想事情的发表,或者针对某件事情的记录,又或是一些成功的经验。


名称

命名为Flow的原因

  • 文章归档形如流水线的设计
  • 更快、更简洁的流水式发布
  • min_cost_max_flow


作用

  • 个人的自由表达与发布
  • 知识的过滤与积累
  • 深度交流沟通的网络新方式

博客,之所以公开在网络上,就是因为他不等同于私人日记,博客的概念肯定要比日记大很多,它不仅仅要记录关于自己的点点滴滴,还注重提供的内容能否帮助到别人。


系统设计

系统需求分析

简述

我们都希望有一个自己的博客网站,因为它可以用来记录我们生活的点点滴滴,也可以分享一些实践乐趣、成功经验。博客是公开的,大家都可以看到我们的文章,同时也都可以通过留言评论与博主进行交流,共同进步。

于是Flow Blog诞生了。


系统目标

前台

  • 简约、快速、响应式设计
  • 可阅读文章并对其进行评论
  • 可通过分类或标签对文章进行过滤
  • 实现友情链接页面
  • 实现文章归档页面
  • 实现RSS阅读

后台

每一个用户都有自己在系统中的权限,而在满足权限的条件下,他可以

  • 创建组,并且可以修改该组所持有的权限
  • 添加用户,可对新添加的用户授权
  • 发表文章,文章可设置为对外公开或对外隐藏
  • 创建页面(首页侧边栏所有的全站链接)
  • 添加友链(友情链接页面)
  • 添加标签(一个文章可含有多个标签属性)
  • 添加分类(一个文章只能在一个分类里面)
  • 更新评论(对读者所评论的内容等做出修改)

性能

  • 实用性:旨在提高内容管理和发布的效率
  • 先进性:后台采用ajax技术进行异步刷新
  • 便捷性:无论身处何地,无论时间,只要接入Internet网络,便可以随时创建并发布自己的文章


技术可行性

对于在浏览器上运行的web程序来说,我们首先想到的应该是B/S架构,服务器进行处理并返回我们在浏览器上所进行的操作请求。因此,主要的编程即为服务器端的编程,结合关系型数据库,共同组成一个完整的博客系统。


数据库设计

实体集

首先,系统应该包含前台与后台,前台负责展示文章,后台可以添加并修改文章,因此系统中必须要有用户存在。

支持多用户同时登陆并进行操作,每一个用户可操作的内容不同,因此便有了用户权限问题,为了方便同样权限的用户统一管理,我们引入了的概念,管理员可以创建组并赋予组一定的权限,而在组中的用户便得到了这些权限,这有点类似于数据库中的角色。

作为博客系统,我们要能在其中发布自己的文章与页面,于是便派生出文章、页面这两个实体,一般情况下我们可以选择让这两者合并。

文章都应该有自己的分类、标签等属性,而读者则可以对已公开的文章进行评论,于是便有了分类、标签、评论三个实体。

既然一个博客在某种程度上可以体现我们的个性化程度,同时我们在阅览别人的博客时也为了方便,想保存他人的链接以备后用,友情链接是一个比较好的选择,我们可以通过它很快的进入到它所链接的页面,当然是我们已经添加的地址。由此,链接便是一个独立的实体。


实体 描述
auth_user 用户
auth_group 组策略
auth_permission 权限表
flow_page 页面
flow_post 文章
flow_category 文章分类
flow_comment 评论
flow_tag 文章标签
flow_link 友情链接
pyblog_log 日志审计


auth_user
字段名 类型 大小 默认值 允许为空 属性 说明
id int 11 False 主键、自增 用户ID编号
password varchar 128 False 用户密码(md5)
last_login datetime 6 False 用户最后一次登录时间
is_superuser tinyint 1 0 False 是否为管理员
username varchar 150 False 唯一 用户登录名
first_name varchar 30 True
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值