# 知识库功能快速设置指南 ## 问题原因 500 错误通常是因为数据库表没有创建导致的。 ## 解决步骤 ### 1. 创建数据库表 打开 MySQL 客户端,连接到您的数据库,执行: ```bash # 方法1:命令行执行 mysql -u root -p your_database < server/database/create_knowledge_tables.sql # 方法2:在 MySQL 客户端中 source server/database/create_knowledge_tables.sql; ``` ### 2. 验证表创建成功 ```sql SHOW TABLES LIKE 'yz_knowledge%'; ``` 应该看到以下表: - yz_knowledge - yz_knowledge_category - yz_knowledge_tags ### 3. 重启后端服务 ```bash cd server go run main.go ``` ### 4. 测试 API 浏览器访问:http://localhost:8080/api/knowledge/list 应该返回: ```json { "code": 0, "message": "success", "data": { "list": [], "total": 0, "page": 1, "pageSize": 10 } } ``` ## 已完成的修改 ### 后端(Go) - ✅ 创建 `server/models/knowledge.go` - 知识库模型 - ✅ 创建 `server/controllers/knowledge.go` - 知识库控制器 - ✅ 创建 `server/database/yz_knowledge.sql` - 数据库表结构 - ✅ 更新 `server/routers/router.go` - 添加路由 - ✅ 更新 `server/models/user.go` - 注册模型 - ✅ 修复模型字段映射问题 ### 前端(TypeScript) - ✅ 更新 `front/src/api/knowledge.ts` - API 调用 - ✅ 更新 `front/src/views/apps/knowledge/index.vue` - 列表页面 - ✅ 更新 `front/src/views/apps/knowledge/components/edit.vue` - 编辑页面 - ✅ 更新 `front/src/views/apps/knowledge/components/detail.vue` - 详情页面 - ✅ 创建 `front/src/components/WangEditor.vue` - 富文本编辑器组件 - ✅ 更新 `front/src/main.ts` - 全局注册组件 - ✅ 更新 `front/src/router/index.ts` - 路由配置 ## API 端点 - `GET /api/knowledge/list` - 获取列表 - `GET /api/knowledge/detail?id=xxx` - 获取详情 - `POST /api/knowledge/create` - 创建知识 - `POST /api/knowledge/update` - 更新知识 - `POST /api/knowledge/delete` - 删除知识 - `GET /api/knowledge/categories` - 获取分类 - `GET /api/knowledge/tags` - 获取标签 ## 功能特性 - ✅ 富文本编辑器(wangEditor) - ✅ 实时预览 - ✅ 分类和标签管理 - ✅ 搜索和分页 - ✅ 主题支持 - ✅ 响应式布局