Files
chengshishouce/city-manual/README.md
maoshen 1639775a39 docs: 更新项目功能清单和部署说明
- 完善项目状态说明(后端/前端/部署)
- 添加详细功能清单(用户/区域/内容/服务/版主系统)
- 更新开发日志
- 添加生产环境访问地址
2026-04-12 11:23:36 +00:00

244 lines
5.6 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 城市手册 - City Manual
地方志兼本地生活服务平台
## 项目状态
### ✅ 后端 (Django) - 已完成
- ✅ 用户系统注册、登录、JWT 认证、权限管理)
- ✅ 区域管理(省市区乡镇村 5 级层级)
- ✅ 内容管理(文章、评论、评分、点赞、收藏)
- ✅ 特色服务(衣食住行娱乐旅游文化)
- ✅ 版主审核系统(申请、支持、审核流程)
- ✅ RESTful API完整端点
- ✅ Django Admin 后台
- ✅ 示例数据6 省 8 市 7 文章 6 服务)
- ✅ PostgreSQL 数据库配置
### ✅ 前端 (React) - 核心功能完成
- ✅ 首页Hero、省份导航、精选内容
- ✅ 城市列表页(层级导航、面包屑)
- ✅ 区域详情页(标签页、统计信息)
-**登录页**JWT 认证、错误处理)
-**注册页**(表单验证、自动登录)
-**导航栏状态切换**(登录/登出、用户名显示)
- ✅ API 集成Axios + Token 管理)
- ✅ 响应式设计
### ✅ 部署 - 已完成
- ✅ Gunicorn3 workers端口 8000
- ✅ Nginx反向代理端口 81
- ✅ 静态文件服务
- ✅ 生产环境配置
### ⏳ 待开发
- 文章详情页
- 服务详情页
- 个人中心
- 搜索功能
- AI 审核集成
## 技术栈
### 后端
- Django 4.2
- Django REST Framework
- JWT 认证
- SQLite (开发环境)
### 前端
- React + Vite
- React Router
- Axios
- 原生 CSS
## 快速开始
### 开发环境
**后端启动**
```bash
cd backend
python3 manage.py runserver 0.0.0.0:8000
```
**前端启动**
```bash
cd frontend
npm install
npm run dev
```
### 生产环境(本地部署)
**访问地址**
- 主页http://127.0.0.1:81/
- Admin: http://127.0.0.1:81/admin/
- API: http://127.0.0.1:81/api/
**服务状态**
- Gunicorn: 3 workers, 端口 8000
- Nginx: 反向代理,端口 81
### 测试账号
| 用户名 | 密码 | 说明 |
|--------|------|------|
| admin | (创建时设置) | 超级管理员 |
| demo | demo123 | 示例用户(已预创建) |
## API 端点
### 用户
- `POST /api/register/` - 用户注册
- `POST /api/token/` - 获取 JWT token
- `GET /api/users/me/` - 当前用户信息
### 区域
- `GET /api/regions/` - 区域列表
- `GET /api/regions/{id}/` - 区域详情
- `GET /api/regions/provinces/` - 省级区域
- `GET /api/regions/{id}/children/` - 子区域
### 文章
- `GET /api/articles/` - 文章列表
- `POST /api/articles/` - 创建文章(需登录)
- 查询参数:`?region={id}&type={type}`
### 特色服务
- `GET /api/services/` - 服务列表
- `POST /api/services/` - 创建服务(需登录)
- 查询参数:`?region={id}&category={category}`
### 评论
- `GET /api/comments/` - 评论列表
- `POST /api/comments/` - 创建评论(需登录)
### 评分
- `GET /api/ratings/` - 评分列表
- `POST /api/ratings/` - 创建评分(需登录)
### 版主申请
- `GET /api/moderator-applications/` - 申请列表
- `POST /api/moderator-applications/` - 创建申请(需登录)
- `POST /api/moderator-applications/{id}/support/` - 支持申请
## 数据库模型
### 核心模型
- User - 用户
- Region - 区域(省市区乡镇村)
- Article - 文章
- FeaturedService - 特色服务
- Comment - 评论
- Rating - 评分
- Like - 点赞
- Favorite - 收藏
- ModeratorApplication - 版主申请
- ModeratorPermission - 版主权限
## 审核流程
```
用户提交 → 版主初审 → AI 审核 → 发布
↓ ↓
拒绝 拒绝
```
## 示例数据
已导入以下示例数据:
**省份 (6 个)**
- 北京市、上海市、广东省、浙江省、四川省、陕西省
**城市 (8 个)**
- 广州市、深圳市、杭州市、宁波市、成都市、绵阳市、西安市、咸阳市
**文章 (7 篇)**
- 北京故宫游览攻略、上海外滩历史、广州早茶文化等
**特色服务 (6 个)**
- 全聚德烤鸭、东方明珠塔、广州塔、楼外楼、宽窄巷子、大唐不夜城
## 功能清单
### 用户系统
- [x] 用户注册
- [x] 用户登录JWT
- [x] 用户登出
- [x] Token 自动管理
- [x] 登录状态持久化
- [x] 401 自动跳转登录
- [ ] 个人中心
- [ ] 密码修改
- [ ] 头像上传
### 区域系统
- [x] 省市区乡镇村 5 级层级
- [x] 区域列表/详情
- [x] 父子区域查询
- [x] 区域代码管理
- [x] 区域激活/禁用
### 内容系统
- [x] 文章 CRUD
- [x] 文章按区域筛选
- [x] 评论系统
- [x] 评分系统
- [x] 点赞功能
- [x] 收藏功能
- [ ] 文章详情页
- [ ] 富文本编辑器
- [ ] 图片上传
### 特色服务
- [x] 服务 CRUD
- [x] 服务分类(衣食住行娱乐旅游文化)
- [x] 服务按区域筛选
- [ ] 服务详情页
- [ ] 服务预约
### 版主系统
- [x] 版主申请
- [x] 用户支持申请
- [x] 申请状态管理
- [ ] AI 审核集成
- [ ] 版主审核后台
### 其他功能
- [ ] 搜索功能
- [ ] 分页优化
- [ ] 数据统计面板
- [ ] 消息通知
## 开发日志
### 2026-04-12
- ✅ 实现登录页面JWT 认证)
- ✅ 实现注册页面(表单验证)
- ✅ 导航栏登录状态切换
- ✅ 修复 API 路径问题
- ✅ 部署到 Nginx 81 端口
- ✅ Git 提交并推送
### 2026-04-10
## 开发日志
### 2026-04-10
- ✅ 创建 Django 项目结构
- ✅ 设计数据库模型
- ✅ 实现用户系统
- ✅ 实现区域管理
- ✅ 实现内容管理
- ✅ 实现特色服务
- ✅ 实现版主审核系统
- ✅ 配置 REST API
- ✅ 启动开发服务器
- ✅ 创建示例数据导入命令
- ✅ 导入示例数据6 省 8 市 7 文章 6 服务)
- ✅ 前端页面开发(首页/城市列表/区域详情)
- ✅ API 集成axios + react-router
- ✅ Git 提交