勇哥带您手搓一个信息发布系统CMS(1)--前期设计

目录

一、引言

二、表设计

三、表之间的关系:


一、引言

内容管理系统(Content Management System,CMS),是一种位于WEB前端(Web 服务器)和后端办公系统或流程(内容创作、编辑)之间的软件系统。

本系统采用的系统架构:

springboot+jpa+Mysql+redis+jwt

后台管理界面采用vue,用户展示界面使用layui+thymeleaf

废话不多说直接上表设计

二、表设计

频道分类表:

CREATE TABLE `channel_category` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '自增ID',
  `title` varchar(400) DEFAULT NULL COMMENT '标题',
  `build_path` varchar(450) DEFAULT NULL COMMENT '生成文件夹名称',
  `templet_path` varchar(450) DEFAULT NULL COMMENT '模板文件夹名称',
  `domain` varchar(300) DEFAULT NULL COMMENT '绑定域名',
  `is_default` int(11) DEFAULT NULL COMMENT '是否默认',
  `sort_id` int(11) DEFAULT NULL COMMENT '排序数字',
  `create_time` datetime DEFAULT NULL COMMENT '创建时间',
  `created_id_by` bigint(20) DEFAULT NULL COMMENT '创建人id',
  `created_by` varchar(200) DEFAULT NULL COMMENT '创建人',
  `update_time` datetime DEFAULT NULL COMMENT '更新时间',
  `update_id_by` bigint(20) DEFAULT NULL COMMENT '更新人id',
  `update_by` varchar(200) DEFAULT NULL COMMENT '更新人',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COMMENT='频道分类表:站群用';

 系统频道表:

CREATE TABLE `channel` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '自增ID',
  `category_id` bigint(20) DEFAULT NULL COMMENT ' 分类ID',
  `name` varchar(450) DEFAULT NULL COMMENT '频道名称',
  `title` varchar(450) DEFAULT NULL COMMENT '频道标题',
  `is_albums` int(11) DEFAULT NULL COMMENT '是否开启相册功能',
  `is_attach` int(11) DEFAULT NULL COMMENT '是否开启附件功能',
  `page_size` int(11) DEFAULT NULL COMMENT '每页显示数量',
  `sort_id` int(11) DEFAULT NULL COMMENT '排序数字',
  `create_time` datetime DEFAULT NULL COMMENT '创建时间',
  `created_id_by` bigint(20) DEFAULT NULL COMMENT '创建人id',
  `created_by` varchar(200) DEFAULT NULL COMMENT '创建人',
  `update_time` datetime DEFAULT NULL COMMENT '更新时间',
  `update_id_by` bigint(20) DEFAULT NULL COMMENT '更新人id',
  `update_by` varchar(200) DEFAULT NULL COMMENT '更新人',
  PRIMARY KEY (`id`),
  KEY `channel_fk` (`category_id`),
  CONSTRAINT `channel_fk` FOREIGN KEY (`category_id`) REFERENCES `channel_category` (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8 COMMENT='系统频道表';

 内容管理分类表

CREATE TABLE `content_category` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
  `channel_id` bigint(20) DEFAULT NULL COMMENT '所属栏目ID',
  `title` varchar(200) DEFAULT NULL COMMENT '类别标题',
  `call_index` varchar(45) DEFAULT NULL COMMENT '调用别名',
  `parent_id` bigint(20) DEFAULT NULL COMMENT '父类别ID',
  `class_list` varchar(200) DEFAULT NULL COMMENT '字类别ID列表(逗号分隔开)',
  `class_layer` int(11) DEFAULT NULL COMMENT '类别深度',
  `sort_id` int(11) DEFAULT NULL COMMENT '排序数字',
  `link_url` varchar(200) DEFAULT NULL COMMENT 'URL跳转地址',
  `img_url` varchar(200) DEFAULT NULL COMMENT '图片地址',
  `content` varchar(400) DEFAULT NULL,
  `seo_title` varchar(400) DEFAULT NULL COMMENT 'SEO标题',
  `seo_keywords` varchar(400) DEFAULT NULL COMMENT 'SEO关健字',
  `seo_description` varchar(400) DEFAULT NULL COMMENT ' SEO描述',
  `template_list_url` varchar(300) DEFAULT NULL COMMENT '不填默认使用频道的地址_列表',
  `template_details_url` varchar(300) DEFAULT NULL COMMENT '不填默认使用频道的地址_详情',
  `template_back_list_url` varchar(300) DEFAULT NULL COMMENT '不填默认使用频道的地址_列表_后台',
  `template_back_details_url` varchar(300) DEFAULT NULL COMMENT '不填默认使用频道的地址_详情_后台',
  `create_time` datetime DEFAULT NULL COMMENT '创建时间',
  `created_id_by` bigint(20) DEFAULT NULL COMMENT '创建人id',
  `created_by` varchar(200) DEFAULT NULL COMMENT '创建人',
  `update_id_by` bigint(20) DEFAULT NULL COMMENT '更新人id',
  `update_by` varchar(200) DEFAULT NULL COMMENT '更新人',
  `update_time` datetime DEFAULT NULL COMMENT '更新时间',
  `is_show` int(11) DEFAULT NULL COMMENT '是否显示',
  PRIMARY KEY (`id`),
  KEY `content_category_fk` (`channel_id`),
  CONSTRAINT `content_category_fk` FOREIGN KEY (`channel_id`) REFERENCES `channel` (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=15 DEFAULT CHARSET=utf8 COMMENT='内容管理:类别表';

内容表: 

CREATE TABLE `content_article` (
  `id` bigint(20) NOT NULL COMMENT '主键id',
  `channel_id` bigint(20) DEFAULT NULL COMMENT '频道id',
  `category_id` bigint(20) DEFAULT NULL COMMENT '分类id',
  `call_index` varchar(45) DEFAULT NULL COMMENT '调用别名',
  `title` varchar(400) DEFAULT NULL COMMENT '标题',
  `link_url` varchar(200) DEFAULT NULL COMMENT '链接地址',
  `img_url` varchar(200) DEFAULT NULL COMMENT '封面图片地址',
  `seo_title` varchar(400) DEFAULT NULL COMMENT 'seo标题',
  `seo_keywords` varchar(400) DEFAULT NULL COMMENT 'seo关键字',
  `seo_description` varchar(400) DEFAULT NULL COMMENT 'seo简介',
  `zhaiyao` varchar(400) DEFAULT NULL COMMENT '摘要',
  `sort_id` int(11) DEFAULT NULL COMMENT ' 排序',
  `click` int(11) DEFAULT '0' COMMENT '浏览次数',
  `status` int(11) DEFAULT NULL COMMENT '状态0正常1未审核2锁定',
  `is_top` int(11) DEFAULT NULL COMMENT '是否置顶',
  `is_red` int(11) DEFAULT NULL COMMENT '是否推荐',
  `is_hot` int(11) DEFAULT NULL COMMENT '是否热门',
  `is_slide` int(11) DEFAULT NULL COMMENT '是否幻灯片',
  `is_sys` int(11) DEFAULT NULL COMMENT '是否管理员发布0不是1是',
  `is_msg` int(11) DEFAULT NULL COMMENT ' 是否允许评论',
  `create_time` datetime DEFAULT NULL COMMENT '创建时间',
  `created_id_by` bigint(20) DEFAULT NULL COMMENT '创建人id',
  `created_by` varchar(200) DEFAULT NULL COMMENT '创建人',
  `update_id_by` bigint(20) DEFAULT NULL COMMENT '更新人id',
  `update_by` varchar(200) DEFAULT NULL COMMENT '更新人',
  `update_time` datetime DEFAULT NULL COMMENT '更新时间',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

内容详情表 

CREATE TABLE `content_details` (
  `id` bigint(20) NOT NULL COMMENT '主键id和content_article_id用同一个',
  `content_category_id` bigint(20) DEFAULT NULL COMMENT '文章分类Id',
  `content` mediumtext CHARACTER SET utf8mb4 COLLATE utf8mb4_bin COMMENT '文章内容',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='文章内容';

后续还有附件表,评论表,等后面使用到时在上传。

三、表之间的关系:

频道分类表 一对多 系统频道表

系统频道表是内容管理分类表的选项。

内容管理分类表 一对多 内容表

内容表  一对一 内容详情表

你可能感兴趣的:(手搓CMS,数据库,eclipse,java,vue)