feat(core): 优化路径处理和配置端口并添加项目规范文档

- 将所有文件路径转换为 URL 友好格式,统一使用正斜杠,确保跨平台兼容
- 修改默认服务器监听端口为 :8989,提升默认配置适用性
- 数据库初始化时创建数据库文件夹,避免路径不存在导致错误
- 新增 AGENTS.md 文档,详细规范项目开发流程、代码风格、架构设计和安全性能指导
- 修正头像路径显示逻辑,确保头像 URL 正确展示
- 增加应用启动和开发的标准操作指南,提升团队协作效率
This commit is contained in:
2026-02-24 20:44:05 +08:00
parent 084d3b0faf
commit ddec422813
7 changed files with 319 additions and 6 deletions

View File

@@ -2,6 +2,7 @@ package controllers
import (
"net/http"
"path/filepath"
"github.com/gin-contrib/sessions"
"github.com/gin-gonic/gin"
@@ -40,6 +41,14 @@ func (c *HomeController) Index(ctx *gin.Context) {
posts, _ := c.discussionSvc.GetApprovedPosts(30)
// 处理头像路径,确保使用正斜杠并添加前导斜杠
for i := range posts {
if posts[i].Avatar != "" {
avatarPath := filepath.ToSlash(posts[i].Avatar)
posts[i].Avatar = "/" + avatarPath
}
}
var postCount, userCount, onlineCount int64
postCount, _ = c.discussionRepo.CountByStatus("approved")
userCount, onlineCount, _ = c.userSvc.GetUserStats()
@@ -93,7 +102,9 @@ func (c *HomeController) ShowPost(ctx *gin.Context) {
avatar := ""
if detail.Post.User.Avatar != "" {
avatar = "/" + detail.Post.User.Avatar
// 确保路径使用正斜杠,并添加前导斜杠
avatarPath := filepath.ToSlash(detail.Post.User.Avatar)
avatar = "/" + avatarPath
}
ctx.HTML(http.StatusOK, "post.html", gin.H{