# 城市手册 - City Manual 地方志兼本地生活服务平台 ## 项目状态 ### ✅ 后端 (Django) - 已完成 - ✅ 用户系统(注册、登录、JWT 认证、权限管理) - ✅ 区域管理(省市区乡镇村 5 级层级) - ✅ 内容管理(文章、评论、评分、点赞、收藏) - ✅ 特色服务(衣食住行娱乐旅游文化) - ✅ 版主审核系统(申请、支持、审核流程) - ✅ RESTful API(完整端点) - ✅ Django Admin 后台 - ✅ 示例数据(6 省 8 市 7 文章 6 服务) - ✅ PostgreSQL 数据库配置 ### ✅ 前端 (React) - 核心功能完成 - ✅ 首页(Hero、省份导航、精选内容) - ✅ 城市列表页(层级导航、面包屑) - ✅ 区域详情页(标签页、统计信息) - ✅ **登录页**(JWT 认证、错误处理) - ✅ **注册页**(表单验证、自动登录) - ✅ **导航栏状态切换**(登录/登出、用户名显示) - ✅ API 集成(Axios + Token 管理) - ✅ 响应式设计 ### ✅ 部署 - 已完成 - ✅ Gunicorn(3 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 提交