不会后端不用愁,Strapi解你忧——搭建博客系统常用数据表设计

使用 Strapi 做个人博客,最少 5 张核心表(文章、分类、标签、图片上传、全局配置)就能满足博客系统的基础功能了,加上评论、用户、友链扩展到 8 张表即可支持完整的博客生态了。

对于初级前端来说,建议先创建5张核心表实现博客的基础功能,如果是中高级或者对博客系统比较熟悉的,可以一步到位直接往完整的博客生态设计。

一. 最小可用版(5张表,新手、本地环境首选)

功能:写文章、分类、标签、上传图片、基础配置等,做个人博客完全够用了。

表名(Content-Type)类型核心作用必选字段
Post(文章) 集合类型 存储博客文章主体 标题、内容、摘要、封面图、发布状态、创建时间
Category(分类) 集合类型 文章大分类(如:前端、后端) 分类名称、分类描述、排序
Tag(标签) 集合类型 文章细标(如:Vue、React) 标签名称
Upload(媒体) 系统内置 保存封面图、文章内部图片等 Strapi 自动生成,无需手动创建
Setting(全局配置) 单类型 博客标题、LOGO、备案号、简介等 站点名称、LOGO、副标题、备案信息

二、完整功能版(8 张表,推荐生产环境使用)

在最小版基础上,增加评论、用户、友链等功能,支持互动和扩展。

1. Post(文章表)✅ 核心

字段:
- title:字符串(必填,文章标题)
- content:富文本/Markdown(必填,正文)
- excerpt:短文本(可选,文章摘要)
- cover:媒体(可选,封面图)
- isPublished:布尔值(默认false,发布状态)
- publishedAt:日期(发布时间,自动)
- createdAt:日期(创建时间,自动)
- updatedAt:日期(更新时间,自动)

关系:
- 多对一 → Category(一篇文章属于一个分类)
- 多对多 → Tag(一篇文章可加多个标签)

2. Category(分类表)

字段:
- name:字符串(必填,分类名)
- description:文本(可选,分类描述)
- sort:数字(可选,排序权重)

关系:
- 一对多 → Post(一个分类包含多篇文章)

注,如果想实现多级分类,可以做如下修改:

字段:
- name:字符串(必填,分类名)
- description:文本(可选,分类描述)
- sort:数字(可选,排序权重)
- parent:字符串(可选,父分类 ID,没有就是一级分类)

关系:
- 一对多 → Post(一个分类包含多篇文章,文章只关联最终子分类)
- 分类自身 多对一(子分类 → 父分类)

3. Tag(标签表)

字段:
- name:字符串(必填,标签名)

关系:
- 多对多 → Post

4. Comment(评论表)✅ 互动必备

字段:
- authorName:字符串(必填,评论人昵称)
- authorEmail:字符串(可选,邮箱)
- content:文本(必填,评论内容)
- isChecked:布尔值(默认false,审核通过)
- createdAt:日期(自动)

关系:
- 多对一 → Post(一条评论属于一篇文章)

5. User(用户表)

Strapi 内置,无需手动创建。

用于:后台管理员、前台会员(可选)、权限控制。

6. Setting(全局配置)✅ 单类型(重要)

Strapi 单类型 = 只有一条数据的表,专门存网站全局信息。

字段:
- siteName:字符串(博客名称)
- siteLogo:媒体(LOGO)
- siteDesc:文本(站点描述)
- icpInfo:字符串(备案号)
- socialGithub:字符串(GitHub链接)

7. FriendLink(友情链接)可选

字段:
- name:字符串(友链名称)
- url:字符串(链接地址)
- logo:媒体(友链图标)
- sort:数字(排序)

8. Page(自定义页面)可选

用于:关于我、联系方式、留言板等独立页面。

字段:
- title:字符串
- content:富文本
- slug:字符串(URL 路径,如 /about)

三、表之间的核心关系(Strapi 必配):

文章 ↔ 分类:多对一(一个分类下有多篇文章)

文章 ↔ 标签:多对多(一篇文章多个标签,一个标签多篇文章)

文章 ↔ 评论:一对多(一篇文章多条评论)

其他都是独立表,无强关联

四、Strapi 快速创建步骤:

新建项目 → 后台 Content-Type Builder

依次创建:Category → Tag → Post(配置关系)→ Comment → Setting(单类型)

配置字段权限:Settings → Users & Permissions Plugin → Roles 开放前台接口

直接使用自动生成的 REST / GraphQL API

总结:

个人博客最小集:Post、Category、Tag、Setting、Upload(5 个)

完整生产版:增加 Comment、FriendLink、Page(8 个)

所有表无需写 SQL,Strapi 可视化创建,自动生成接口和管理后台。


 

关于创建数据表详见:不会后端不用愁,Strapi解你忧——前端使用Strapi就能实现常见的数据增删查改,分页、排序、模糊查询、时间范围等,不要后端也能自己建站 - 码间留白 - 博客园,这里就不再赘述。

posted on 2026-04-16 21:09  码间留白  阅读(49)  评论(0)    收藏  举报

导航