🛠 博客管理模塊:設計建議
你應該以To B 的后臺系統思路來設計,但保持簡單、輕量級、自己易維護是關鍵。下面是針對你這個場景的建議。
🧱 前端頁面結構(React/Vue 可用)
頁面 說明
博客列表頁 展示所有博客,支持搜索、篩選、分頁、編輯、刪除、發布
博客編輯頁 編輯博客內容(富文本 or Markdown)、封面、標簽等
分類/標簽管理頁 可選,管理博客的分類和標簽
系統設置頁(可選) 如修改作者信息、主題配置等
🧩 博客列表頁功能(BlogManage.tsx)
展示博客標題、狀態、創建/修改時間
操作按鈕:📝編輯 | ?刪除 | 📢發布 / 撤回
篩選條件:標題關鍵詞、狀態(草稿/已發布)、分類
前端技術建議:
UI 框架:Tailwind + ShadCN(輕量)或 Ant Design
數據管理:React Query / Vue Pinia(簡單狀態管理)
編輯器:byMarkdown(Markdown)+ 富文本備用
? 博客編輯器頁(BlogEdit.tsx)
輸入字段:
標題
內容(支持 Markdown + 富文本切換)
封面上傳
分類、標簽
狀態選擇(草稿 or 已發布)
按鈕:
保存草稿
預覽
立即發布
技術建議:
富文本編輯器推薦:quill.js、tiptap、react-quill
Markdown 編輯器推薦:@uiw/react-md-editor
🗂 內容管理邏輯
所有博客保存在數據庫,狀態字段標明“已發布”或“草稿”
發布按鈕會將狀態從草稿 ? 發布,前臺頁面讀取“已發布”內容渲染
可選支持定時發布(設置一個未來時間)
一個完整的后臺管理系統,包含樹狀導航菜單和數據管理界面。對于博客模塊,需要支持Markdown和富文本編輯功能。我建議使用React + Ant Design Pro構建前端界面,后端使用NestJS + MongoDB,實現一個完整的CRUD系統。系統將包含用戶認證、權限管理、博客管理等模塊,并提供完整的API接口支持。我會設計一個清晰的項目結構,包括前端組件、后端服務、數據模型和API接口定義。
基于您的需求,我將為您設計一個完整的后臺管理系統。以下是詳細的功能清單和設計方案:
1. 系統架構設計
前端技術棧:
- React + TypeScript
- Ant Design Pro(UI框架)
- bytemd(Markdown編輯器)
- wangEditor(富文本編輯器)
- Redux Toolkit(狀態管理)
后端技術棧:
- NestJS(Node.js框架)
- MongoDB(數據庫)
- JWT(身份認證)
- Mongoose(ODM)
2. 數據庫設計
用戶表(Users)
{_id: ObjectId,username: string, // 用戶名password: string, // 加密密碼email: string, // 郵箱role: string, // 角色:admin/editoravatar: string, // 頭像URLcreatedAt: Date, // 創建時間updatedAt: Date // 更新時間
}
博客表(Blogs)
{_id: ObjectId,title: string, // 標題content: string, // 內容contentType: string, // 內容類型:markdown/richtextcategory: string, // 分類tags: string[], // 標簽author: ObjectId, // 作者IDstatus: string, // 狀態:draft/publishedpublishedAt: Date, // 發布時間createdAt: Date, // 創建時間updatedAt: Date, // 更新時間views: number, // 瀏覽量likes: number // 點贊數
}
3. 功能模塊清單
1. 用戶認證模塊
- 登錄/登出
- 修改密碼
- 個人信息管理
2. 博客管理模塊
- 博客列表(支持分頁、搜索、篩選)
- 博客創建(支持Markdown/富文本)
- 博客編輯
- 博客刪除
- 博客發布/取消發布
- 博客預覽
3. 分類管理模塊
- 分類列表
- 分類創建
- 分類編輯
- 分類刪除
4. 標簽管理模塊
- 標簽列表
- 標簽創建
- 標簽編輯
- 標簽刪除
4. API接口設計
認證接口
POST /api/auth/login // 登錄
POST /api/auth/logout // 登出
PUT /api/auth/password // 修改密碼
GET /api/auth/profile // 獲取個人信息
PUT /api/auth/profile // 更新個人信息
博客接口
GET /api/blogs // 獲取博客列表
GET /api/blogs/:id // 獲取博客詳情
POST /api/blogs // 創建博客
PUT /api/blogs/:id // 更新博客
DELETE /api/blogs/:id // 刪除博客
PUT /api/blogs/:id/publish // 發布博客
PUT /api/blogs/:id/unpublish // 取消發布博客
分類接口
GET /api/categories // 獲取分類列表
POST /api/categories // 創建分類
PUT /api/categories/:id // 更新分類
DELETE /api/categories/:id // 刪除分類
標簽接口
GET /api/tags // 獲取標簽列表
POST /api/tags // 創建標簽
PUT /api/tags/:id // 更新標簽
DELETE /api/tags/:id // 刪除標簽
5. 頁面布局設計
整體布局
- 頂部:導航欄(包含用戶信息、退出按鈕)
- 左側:樹狀菜單導航
- 右側:內容區域
左側菜單結構
├── 儀表盤
├── 博客管理
│ ├── 博客列表
│ └── 寫博客
├── 分類管理
├── 標簽管理
└── 個人設置
博客編輯頁面布局
- 頂部:標題輸入、分類選擇、標簽選擇
- 中部:編輯器切換(Markdown/富文本)
- 底部:操作按鈕(保存草稿、預覽、發布)
6. 權限設計
角色設計
- 管理員(admin):所有權限
- 編輯者(editor):博客管理權限
權限項
- 用戶管理權限
- 博客管理權限
- 分類管理權限
- 標簽管理權限
這個設計方案提供了一個完整的后臺管理系統框架,包含了博客管理所需的所有基本功能。系統采用現代化的技術棧,提供了良好的用戶體驗和開發體驗。您可以根據實際需求對這個方案進行調整和擴展。
核心部分:博客管理