这是Fengfeng博客10代项目
最开始做七代博客的时候,是刚开始做go开发不到半年
表结构的搭建并不算是从0到1,没有原型,做前端页面的时候,一会儿一个想法
但是好在技术栈全面,和文档记录详细,还是帮助了不少人成功找到了自己心仪的工作
经过两年的技术沉淀,和gvb系列,gvd,fim,fai项目的授课经验
决定再从0到1开发一个博客系统
为此,我给它取了一个响当当的名字 BlogX,意为“博客十代”
项目需求
管理员可以切换运行模式,社区、博客模式
网站配置要尽可能全,直接运行不需要改代码就能变成自己的
文章管理需要有人工审核机制,可以有效保障内容安全,同时也留了一个免审核功能
私信功能全面升级,用户可给喜欢的博主发私信,好友关系分为 陌生人 已关注 粉丝 好友
消息通知更加全面,包括评论,赞和收藏,系统通知
收藏夹、文章分类功能,可以通过此功能整理同类型文章
个人主页,每个用户都可以选择不同的样式
用户发布文章,可以开启是否可评论
登录注册功能,可定制化是否使用qq登录,邮箱注册,是否显示图形验证码
文章最少只需要标题和正文,可大大简化发布流程
要接入AI,要有差异化
可以做AI知识库,根据用户输入的内容,在全站文章中AI匹配
还可以在发布文章的时候,分析文章适合的标签,分类,标题
要能实现前端发版之后,线上能够自动刷新
日志的记录要尽可能全面,日志方法的使用要简单
数据库优化方面,索引优化,主从同步、读写分离,水平分表
可以不需要es依赖,对应的搜索功能则需要对应的服务降级
一键部署,部署流程要尽可能简单
项目相关技术栈
后端:
gin,gorm,redis,mysql,websocket, SSE,elasticsearch,docker-compose
前端:
vue3/ts,arco-desgin
你将学到
- 使用ws实现在线用户的即时通讯
- mysql和es的数据同步
- qq登录的相关知识点
- 编写docker-compose,实现便捷部署
表结构

原型

















课程目录
后端视频目录
总时长:48小时
1.十代博客课程介绍.mp4
2.如何学习本项目.mp4
3.遇到错误怎么办.mp4
4.项目搭建及配置文件读取.mp4
5.项目搭建-读取不同的配置文件.mp4
6.goland运行命令行参数.mp4
7.logrus日志初始化.mp4
8.数据库连接.mp4
9.读写分离的配置.mp4
10.根据ip获取地理位置.mp4
11.根据ip获取地理位置优化.mp4
12.表结构搭建-用户表.mp4
13.表结构搭建-用户表-数据库迁移.mp4
14.表结构搭建-用户配置表.mp4
15.表结构搭建-文章表.mp4
16.表结构搭建-文章分类表和文章点赞表.mp4
17.表结构-收藏表、用户文章收藏表.mp4
18.表结构-置顶文章表、图片表.mp4
19.表结构-文章历史表.mp4
20.表结构-评论表.mp4
21.表结构-banner表和日志表.mp4
22.表结构-用户登录表.mp4
23.表结构-全局通知表.mp4
24.日志-为什么要使用日志管理.mp4
25.日志-登录日志-成功的登录日志.mp4
26.日志-登录日志-登录失败的日志.mp4
27.路由初始化.mp4
28.日志-登录日志测试,apifox创建项目.mp4
29.日志-操作日志-基本框架.mp4
30.日志-操作日志-请求体的获取.mp4
31.日志-操作日志-响应体获取.mp4
32.日志-操作日志-日志流结合.mp4
33.日志-操作日志-视图函数控制记录请求体和响应体.mp4
34.日志-操作日志-SetItem方法.mp4
35.日志-操作日志-setLink,setImage,请求头和响应头.mp4
36.日志-操作日志-保存错误堆栈信息.mp4
37.日志-操作日志-save问题优化.mp4
38.日志-操作日志完结.mp4
39.日志-运行日志-初始化.mp4
40.日志-运行日志按小时,按天记录.mp4
41.日志-运行日志完结.mp4
42.响应封装01.mp4
43.参数绑定失败的响应封装.mp4
44.gin静态路由和模式配置.mp4
45.日志管理-分页查询.mp4
46.日志管理-日志列表接口.mp4
47.通用列表查询封装01.mp4
48.通用列表查询封装02.mp4
49.日志读取接口.mp4
50.日志删除接口.mp4
51.jwt介绍.mp4
52.jwt的使用.mp4
53.双token扩展.mp4
54.redis连接.mp4
55.通过redis实现redis注销功能.mp4
56.中间件认证用户权限.mp4
57.中间件结合redis黑名单.mp4
58.站点配置-站点信息.mp4
59.站点配置-其他四个站点配置.mp4
60.站点配置信息接口.mp4
61.站点信息-敏感字段打码返回.mp4
62.站点信息-qq登录地址.mp4
63.站点信息-网站版本返回.mp4
64.网站配置更新.mp4
65.goquery下载和基本使用.mp4
66.动态更新前端文件.mp4
67.crypto sha3依赖问题.mp4
68.动态更新前端文件功能测试.mp4
69.图片管理-图片基本上传.mp4
70.图片管理-文件大小判断和文件后缀判断.mp4
71.图片管理-文件重复判断.mp4
72.图片管理-文件名重复的处理.mp4
73.图片管理-列表和删除.mp4
74.七牛云介绍.mp4
75.版本错误问题解决.mp4
76.后端直传文件到七牛云.mp4
77.客户端上传文件到七牛云.mp4
78.图片管理-上传凭证接口.mp4
79.图片管理-扩展大文件分片上传.mp4
80.banner管理-增删查.mp4
81.banner管理-修改和api测试.mp4
82.用户管理-图片验证码验证逻辑.mp4
83.用户管理-生成图片验证码.mp4
84.图片验证码接口.mp4
85.go发送邮件.mp4
86.发邮件代码封装.mp4
87.用户管理-给邮箱发邮件接口.mp4
88.用户管理-图形验证码验证中间件.mp4
89.用户管理-通过邮箱注册用户.mp4
90.密码hash+邮箱中间件.mp4
91.如何过qq登录的审核.mp4
92.qq登陆-获取accessToken.mp4
93.qq登陆-获取用户信息.mp4
94.qq登陆封装.mp4
95.qq登陆接口完成.mp4
96.用户管理-用户密码登陆.mp4
97.用户管理-通过命令行创建用户.mp4
98.用户管理-用户详情接口.mp4
99.bug-中间件认证bug解决.mp4
100.用户管理-用户基本信息接口.mp4
101.用户管理-写登陆日志.mp4
102.用户管理-用户登录列表接口.mp4
103.用户登录列表的一些小优化.mp4
104.用户管理-修改密码.mp4
105.用户管理-重置密码.mp4
106.用户管理-邮箱绑定.mp4
107.用户管理-个人信息更新-结构体转map.mp4
108.用户管理-用户信息修改1.mp4
109.用户管理-用户配置修改.mp4
110.用户管理-管理员更新用户信息.mp4
111.用户管理-参数绑定优化.mp4
112.用户管理-apifox编写自定义脚本.mp4
113.文章管理-docker安装和docker配置代理.mp4
114.文章管理-mysql主从配置.mp4
115.文章管理-es创建和连接.mp4
116.文章管理-索引和mapping创建.mp4
117.文章管理-es增删改查.mp4
118.文章管理-mysql同步es.mp4
119.go-mysql-elasticsearch数据同步.mp4
120.同步框架配置文件修改.mp4
121.mysql主从配置优化.mp4
122.同步代码融合-解决依赖问题.mp4
123.同步代码融合-配置部分修改.mp4
124.同步代码融合-完成.mp4
125.重装系统之后的感触.mp4
126.文章管理-修改tag的自定义数据类型.mp4
127.文章管理-用户侧文章发布.mp4
128.文章管理-分类判断和简介提取.mp4
129.文章管理-xss解决.mp4
130.文章管理-图片转存知识点分析.mp4
131.图片转存接口.mp4
132.文章发布测试.mp4
133.扩展-虚拟机修改ip地址.mp4
134.文章管理-文章列表1.mp4
135.文章管理-文章列表2.mp4
136.文章管理-文章列表置顶文章逻辑.mp4
137.文章管理-文章列表-置顶文章查询.mp4
138.文章管理-文章列表排序问题解决.mp4
139.文章管理-文章更新.mp4
140.文章创建和更新的代码优化.mp4
141.博客模式下不能发文章.mp4
142.文章管理-文章详情.mp4
143.文章管理-文章审核.mp4
144.文章管理-文章点赞.mp4
145.文章管理-文章收藏.mp4
146.文章管理-文章浏览量.mp4
147.文章管理-文章缓存设置.mp4
148.文章管理-查询文章缓存的点赞、浏览、收藏.mp4
149.文章管理-文章浏览记录缓存.mp4
150.bug解决-文章浏览记录缓存时间问题.mp4
151.文章浏览缓存修改.mp4
152.文章删除.mp4
153.定时任务-文章数据同步.mp4
154.文章浏览记录列表.mp4
155.文章浏览记录删除.mp4
156.分类的创建和更新.mp4
157.分类列表.mp4
158.分类删除.mp4
159.文章列表增加分类名称和发布人信息.mp4
160.收藏夹增删改查.mp4
161.评论管理-发布评论.mp4
162.评论管理-查根评论.mp4
163.评论管理-评论树.mp4
164.评论管理-评论树一维化.mp4
165.评论管理-评论树转换.mp4
166.评论树接口.mp4
167.评论列表.mp4
168.评论列表接口测试.mp4
169.缓存文章评论数.mp4
170.评论层级的限制.mp4
171.评论树的层级限制.mp4
172.评论回复数缓存.mp4
173.评论回复数定时任务同步.mp4
174.评论删除.mp4
175.评论点赞.mp4
176.分类options接口.mp4
177.标签options接口.mp4
178.公开我的收藏功能.mp4
179.批量移除我的收藏文章.mp4
180.站内信-消息表搭建.mp4
181.站内信-用户消息配置表搭建.mp4
182.站内信-评论文章消息.mp4
183.站内信-回复评论消息.mp4
184.站内信-点赞文章消息.mp4
185.站内信-点赞评论消息.mp4
186.站内信-收藏文章的消息.mp4
187.站内信-系统消息.mp4
188.站内信-消息配置接口.mp4
189.站内信-列表查询接口.mp4
190.站内信-没有主键id引发的问题.mp4
191.站内信-站内信读取.mp4
192.站内信-删除站内信功能.mp4
193.全局消息表结构搭建.mp4
194.全局消息-创建和列表.mp4
195.全局消息删除和用户读取和删除全局消息.mp4
196.全局消息接口测试.mp4
197.站内信-我的未读消息.mp4
198.好友关系-表结构搭建.mp4
199.好友关系-关注用户.mp4
200.好友关系-我的关注列表.mp4
201.好友关系-用户的关注列表.mp4
202.好友关系-粉丝列表.mp4
203.好友关系-取消关注.mp4
204.好友关系-计算好友关系.mp4
205.好友关系-用户列表支持模糊匹配.mp4
206.好友关系-批量好友关系计算.mp4
207.用户私信-表结构搭建.mp4
208.私信-用户对话方法.mp4
209.私信-对话列表.mp4
210.私信-对话列表-过滤掉删除是消息.mp4
211.私信-消息列表显示消息已读.mp4
212.私信-我最近的会话sql查询.mp4
213.私信-会话列表-1.mp4
214.私信-会话列表-2.mp4
215.私信-会话列表-3.mp4
216.私信-find至map的代码优化.mp4
217.私信-用户删除消息.mp4
218.私信-用户批量删除消息.mp4
219.私信-用户删除与某个人的聊天记录.mp4
220.私信-消息已读.mp4
221.私信-创建ws接口.mp4
222.私信-在线用户记录.mp4
223.私信-消息入参和出参.mp4
224.私信-ws响应封装.mp4
225.私信-消息落库.mp4
226.私信-发信息限制.mp4
227.bug解决-mysql查不到的问题1.mp4
228.bug解决-mysql查不到的问题2.mp4
229.ws消息已读.mp4
230.计算我的未读消息.mp4
231.文章-文章搜索demo.mp4
232.文章-文章查询接口-1.mp4
233.文章查询接口-2.mp4
234.文章搜索接口-3.mp4
235.文章搜索接口-4.mp4
236.文章搜索接口-5.mp4
237.文章搜索接口完成.mp4
238.es不同步的问题解决.mp4
239.es同步配置持久化问题.mp4
240.文章搜索携带文章缓存数据.mp4
241.文章正文转换函数编写1.mp4
242.文章正文转换函数完成.mp4
243.全文记录创建和删除.mp4
244.全文记录更新.mp4
245.全文记录同步es.mp4
246.全文搜索接口开发.mp4
247.未登录的情况下,文章列表只能看前两页.mp4
248.文章ai介绍.mp4
249.本地跑ollama和大语言模型.mp4
250.chatgpt的Demo编写.mp4
251.chatGPT非流式输出封装.mp4
252.chatGPT流式封装.mp4
253.文章正文分析的prompt定义.mp4
254.文章正文分析接口.mp4
255.文章ai的prompt.mp4
256.文章ai接口-1.mp4
257.文章ai接口支持sse.mp4
258.sse输出的问题解决.mp4
259.前端发起sse请求.mp4
260.文章ai服务降级.mp4
261.文章ai配置信息接口.mp4
262.mysqldump的依赖报错问题.mp4
263.项目部署.mp4
264.联调-站点信息增加对象存储是否启用.mp4
265.联调-用户列表接口.mp4
266.联调-用户置顶文章.mp4
267.联调-管理员置顶文章.mp4
268.联调-联调-文章详情增加分类名称和容器时间问题.mp4
269.数据统计-求和数据.mp4
270.数据统计-文章统计.mp4
271.数据统计-用户统计.mp4
272.数据统计-文章浏览统计.mp4
273.数据统计-文章按年统计.mp4
274.数据统计-系统资源.mp4
275.联调-新增用户注销接口.mp4
276.联调-用户标签更新失败问题.mp4
277.联调-用户详情返回邮箱和是否绑定密码.mp4
278.联调-关于文章标签的bug.mp4
279.联调-站点配置增加ai启用信息.mp4
280.联调-评论列表增加好友关系.mp4
281.联调-用户基本信息接口.mp4
282.联调-根据收藏夹id查文章列表.mp4
283.联调-粉丝、关注列表增加好友关系字段.mp4
284.联调-用户基本详情增加好友关系字段.mp4
285.联调-文章详情增加字段.mp4
286.联调-文章收藏文章点赞问题.mp4
287.联调-收藏夹列表增加文章是否在收藏夹中字段.mp4
288.联调-评论树增加两个字段.mp4
289.联调-评论取消点赞的问题.mp4
290.联调-es查标签聚合列表.mp4
291.联调-服务降级的聚合查询.mp4
292.联调-首页作者推荐接口.mp4
293.联调-首页文章推荐接口.mp4
294.联调-banner增加一个type字段.mp4
295.联调-全文搜索增加一个字段.mp4
296.联调-消息列表增加好友关系字段.mp4
297.数据库优化-索引优化.mp4
298.水平分表.mp4
299.缓存优化-01.mp4
300.给banner列表接口加缓存.mp4
301.主动不走缓存策略.mp4
302.联调-批量移除收藏夹下的文章.mp4
303.联调-文章列表查用户收藏文章列表.mp4
304.联调-删除用户接口.mp4
305.前端完成之后的项目部署.mp4
306.服务器-项目部署01.mp4
307.服务器-项目部署02.mp4
308.线上登录500问题解决.mp4
前端视频目录
总时长:47小时
1.十代博客前端学习介绍.mp4
2.项目搭建与超级详细的目录介绍.mp4
3.关于一些git的补充.mp4
4.系统初始化的修改.mp4
5.站点配置路由创建.mp4
6.站点配置-页面搭建.mp4
7.站点配置-输入框的双向数据绑定.mp4
8.图片上传组件.mp4
9.站点配置页面搭建2.mp4
10.首页右侧组件-拖拽功能.mp4
11.首页右侧组件双向绑定.mp4
12.站点配置组件封装.mp4
13.站点配置-传送组件.mp4
14.站点配置-邮箱配置.mp4
15.站点配置-QQ设置.mp4
16.站点配置-ai设置.mp4
17.站点配置-对象存储配置.mp4
18.后台菜单展开问题.mp4
19.图片上传组件bug解决.mp4
20.banner列表.mp4
21.banner创建和更新.mp4
22.文章列表.mp4
23.文章列表自定义显示.mp4
24.表格组件支持date、options、switch组件.mp4
25.文章审核页面搭建.mp4
26.文章审核功能.mp4
27.文章置顶.mp4
28.用户列表.mp4
29.管理员编辑用户信息.mp4
30.日志列表.mp4
31.日志读取.mp4
32.日志详情显示.mp4
33.日志详情-json内容美化输出.mp4
34.操作日志详情完成.mp4
35.运行日志详情.mp4
36.主题切换导致的一些问题解决.mp4
37.后台统计数据页.mp4
38.后台数据统计页面调整.mp4
39.echarts简单使用.mp4
40.第一个图表接入.mp4
41.中间三个图表接入.mp4
42.发布文章的图表.mp4
43.系统资源图表.mp4
44.快捷入口和网站版本.mp4
45.统一换图标-后台部分完成.mp4
46.前台页面搭建开始.mp4
47.导航栏部分.mp4
48.小红点组件封装.mp4
49.头像card组件.mp4
50.头像card组件优化.mp4
51.登录组件1.mp4
52.函数式创建组件.mp4
53.登录组件2.mp4
54.用户名密码登录.mp4
55.邮箱登录1.mp4
56.邮箱登录2.mp4
57.登录条件的判断.mp4
58.基本信息接口问题排查.mp4
59.用户注销.mp4
60.图形验证码.mp4
61.邮箱注册的一些问题解决.mp4
62.用户card数据展示.mp4
63.登录之后跳转回目标地址.mp4
64.qq登录第一种方式.mp4
65.通过子页面进行qq登录.mp4
66.个人中心页面搭建.mp4
67.个人中心-资料页面搭建.mp4
68.个人中心-个人资料接口对接.mp4
69.原位编辑组件1.mp4
70.原位编辑组件2和用户资料更新.mp4
71.图片裁剪组件使用.mp4
72.头像裁剪上传功能.mp4
73.用户名修改.mp4
74.用户标签修改.mp4
75.用户标签更新优化.mp4
76.账号设置页面.mp4
77.账号设置-修改密码组件.mp4
78.账号设置-邮箱修改.mp4
79.账号设置-邮箱修改完成.mp4
80.账号设置-用户登录记录1.mp4
81.账号设置-用户登录记录2.mp4
82.账号设置-隐私设置.mp4
83.账号设置-主页设置1.mp4
84.账号设置-主页设置2.mp4
85.账号设置-浏览历史.mp4
86.账号设置-浏览历史-数据展示.mp4
87.浏览历史-分页.mp4
88.个人中心完成.mp4
89.文章管理-主页面搭建.mp4
90.文章管理-文章列表页面.mp4
91.文章列表展示优化.mp4
92.文章发布.mp4
93.文章发布-更多设置.mp4
94.文章发布-更多设置1.mp4
95.文章分类和文章标签.mp4
96.文章ai接入.mp4
97.文章图片上传.mp4
98.粘贴事件判断是否是图片.mp4
99.文章列表-跳转文章编辑.mp4
100.文章编辑页面.mp4
101.文章管理-一些显示优化.mp4
102.文章管理-文章删除.mp4
103.文章管理-文章置顶.mp4
104.图片上传七牛云1.mp4
105.图片上传七牛云2.mp4
106.评论管理-页面搭建.mp4
107.评论列表页面1.mp4
108.评论列表页面2.mp4
109.评论列表页面3.mp4
110.评论分页和评论删除.mp4
111.评论查询.mp4
112.我的评论.mp4
113.评论回复1.mp4
114.评论回复2.mp4
115.用户主页-页面搭建1.mp4
116.用户主页-页面搭建2.mp4
117.用户主页-页面搭建3.mp4
118.用户文章列表.mp4
119.用户文章左边分类列表.mp4
120.用户文章分类列表创建.mp4
121.分类的编辑和删除.mp4
122.分类联动文章列表查询.mp4
123.用户收藏列表页面.mp4
124.用户收藏文章列表完成.mp4
125.收藏列表-批量操作.mp4
126.批量移除收藏的文章.mp4
127.用户主页-关注列表.mp4
128.用户关注列表完成.mp4
129.关注列表和粉丝列表合并.mp4
130.用户关注和取消关注.mp4
131.用户主页一些优化.mp4
132.用户主页-一些优化2.mp4
133.用户主页样式.mp4
134.文章详情页面1.mp4
135.文章详情页面2.mp4
136.文章详情内容展示.mp4
137.浮动目录功能.mp4
138.文章点赞.mp4
139.文章收藏模态框布局.mp4
140.收藏夹模态框拆分.mp4
141.文章收藏功能.mp4
142.回到顶部和去评论.mp4
143.评论树.mp4
144.评论文章.mp4
145.子评论回复页面编写.mp4
146.回复评论.mp4
147.文章点赞,文章删除.mp4
148.文章收藏部分优化.mp4
149.文章详情部分完成.mp4
150.首页banner组件.mp4
151.首页-文章列表1.mp4
152.首页-文章列表2.mp4
153.首页-文章列表完成.mp4
154.文章列表的一些优化.mp4
155.首页标签云组件.mp4
156.首页作者推荐组件.mp4
157.首页文章推荐组件.mp4
158.首页关于我们组件1.mp4
159.首页关于我们组件2.mp4
160.首页-独家推广组件.mp4
161.首页-用户反馈组件.mp4
162.首页-右侧组件按顺序显示.mp4
163.全文搜索组件1.mp4
164.全文搜索组件2.mp4
165.全文搜索功能完成.mp4
166.文章ai页面搭建.mp4
167.ai对话样式调整.mp4
168.文章ai完成.mp4
169.banner部分优化.mp4
170.消息中心-主页面搭建.mp4
171.消息中心-base_msg组件编写.mp4
172.消息中心-评论和@消息.mp4
173.消息中心-消息读取和删除.mp4
174.消息中心-站内消息.mp4
175.消息中心-消息配置.mp4
176.消息中心-未读消息数字显示.mp4
177.私信-会话列表.mp4
178.私信-聊天区域.mp4
179.私信-对话列表.mp4
180.私信-ws连接.mp4
181.私信-ws对话.mp4
182.私信-消息加载更多.mp4
183.私信-私信跳转.mp4
184.私信-发送图片消息.mp4
185.私信-消息预览组件.mp4
186.私信-消息读取的bug解决.mp4
187.私信-发送消息的bug.mp4
188.私信-消息删除.mp4
189.私信-会话删除.mp4
190.私信-默认表情.mp4
191.私信-发送默认表情.mp4
192.私信-表情包消息.mp4
193.ts类型问题1.mp4
194.发版自动刷新页面.mp4
195.优化-收藏文章列表的问题解决.mp4
196.优化-前端完成.mp4