gin項目博客系統偽第一代
項目概述
1.1 目標
- 實現一個功能完整、易用的博客系統,允許用戶發布、編輯和管理博客文章。
1.2 背景
- 看到網上有很多語言寫的博客系統,但go的卻很少,正好,現在我在學go,可以拿博客來練練手,為什么選博客呢?博客系統主要能用于發表自己的觀點、經驗和知識。它可以提供一個平臺,能讓我和朋友們創建、編輯和評論文章,這樣既能練習增刪改查的能力,可擴展性和實用性也是一絕,在之后仍然能加入很多功能,是小白練手,老白回顧的無二之選!
用戶角色
-
2.1 訪客
可以查看博客文章、評論和用戶信息。
-
2.2 管理員
有所有用戶權限,并可以管理用戶、文章和評論。
-
2.3 用戶
在以后會加入普通用戶注冊實現所與人都能發布的功能: 具有訪客權限,并可以發布、編輯和刪除自己的博客文章,以及對其他文章發表評論。
**目前只決定給用戶增加注冊和評論的功能。**以后可能會開聊天室,但不太可能會給用戶太多權限。
功能需求
3.1 用戶認證
- 允許用戶注冊賬戶,并提供登錄功能。3.2 博客文章管理- 只有管理員用戶可以發布、編輯和刪除自己的博客文章。- 所有用戶可以查看博客文章列表,按時間或其他標準排序。3.3 評論系統- 注冊用戶可以對博客文章發表評論。- 用戶可以回復評論。3.4 用戶管理- 管理員可以查看和管理所有用戶。- 管理員可以禁用或刪除用戶賬戶。3.5 高級搜索和過濾- 允許用戶通過關鍵字或其他標準搜索博客文章。3.6 用戶設置- 注冊用戶可以編輯個人資料,包括頭像、用戶名等。3.7 管理員設置- 管理員可以對博客內容進行增加修改和刪除。
技術要求
4.1 后端
使用gin+gorm+mysql編寫后端服務。
- 使用數據庫MySQL存儲用戶信息、博客文章和評論。
- 使用適當的ORM庫(例如gorm)進行數據庫交互。
- 實現RESTful API,用于前端與后端的通信。
4.2 前端 - 使用React、Vue.js或Angular等現代前端框架。 - 與后端通過API進行通信。 - 實現用戶友好的用戶界面。(未來的計劃)
(初版仍然是前后端不分離網站,基于tmpl模板制作)
在之后也會持續更新,希望未來能加入的功能:音樂放映廳,聊天室,對接ai模型api,對接新聞模塊,等,希望有生之年能看到第10版;
由于demo的存在是必要的,所以先從最初的V0版本做起;
目前的
計劃是V0版本把大的框架拉起來,
V0版本構想
由于需要demo的存在,畢竟是需要有部分的試錯的,所以先從最初的V0版本做起;
目前的計劃是V0版本把大的框架拉起來,先不在乎細節和安全,先實現功能;
?
,應該可以包攬mvc架構的全部模塊,不過前期有些不會用到。按照網上流傳的項目框架制作
目前計劃前期功能和頁面總覽
管理員登錄頁面(已基本完成):
登陸后進入后臺主頁面,前端主頁計劃采用
左側菜單,右側內容的布局,使用iframe結構
這種布局多見于系統后臺管理,基本分為三部分,即頂部標、左側菜單、右側內容。 基本功能是點擊左側菜單,右側內容轉到相應的界面。點擊頂部logo回到首頁。
預期效果
目前我這一頁實現了點擊博客標題,會在右側刷新博客內容的功能;
第三頁,點擊右上角進入管理員登陸,輸入后進入后臺可以進行對博客,用戶,評論的增刪改查功能;
-
# 普通用戶流程1. 用戶進入主頁 2. 用戶點擊分類 3. 用戶進入詳情頁 4. 用戶點擊詳細博客名 5. 右側渲染博客內容 6. 用戶下拉 7. 用戶點擊評論 8. 如果用戶未注冊:a. 進行用戶注冊b. 注冊后,用戶可以發送評論# 管理員流程1. 管理員進入主頁 2. 管理員點擊右上角登錄管理后臺 3. 管理員登錄后,可以進行以下操作:a. 對博客進行增刪改查b. 對用戶進行增刪改查c. 對評論進行增刪改查
這是最基礎的功能,最晚預計在閉組之前完成,時間充足會增加更多功能;
代碼整體實現框架
:經過了一周的艱苦奮斗,項目總算是得以使用(功能基本完全)
現在,稍微講述一下基本功能的實現
先分模塊講解如何制作,首先是登陸界面制作,
待更新。。。