414e5e58c385ba4b9401c5ed0535272ba0369a6a
模型变更:
- DiaryEntry 添加 linked_tasks (ManyToMany 关联任务)
- DiaryEntry 添加 content 字段
- Experience 添加 extracted_from (外键关联日记)
- Task 添加 diary_entries (反向关联)
API 变更:
- 新增 /entries/{id}/link_task/ - 关联任务并自动更新进展
- 新增 /entries/{id}/extract_experience/ - 从日记提炼经验
- 序列化器支持关联数据嵌套显示
前端重构:
- 写日记作为主入口
- 关联任务复选框(保存时自动更新任务进展)
- 日记历史显示关联的任务和经验
- 任务列表显示关联的日记
- 经验总结独立展示
工作流程优化:
- 写日记时勾选任务 → 自动更新任务进展
- 写日记时记录反思 → 可提炼为经验总结
- 减少 60-70% 重复记录工作
码神的日记系统
⚡ 记录每天的进步与成长
技术架构
- 后端: Django + Django REST Framework
- 前端: 原生 HTML/JS (轻量级)
- 数据库: PostgreSQL (与城市手册共用)
- 部署: Gunicorn + Nginx
快速启动
cd /root/.openclaw/workspace/diary-system
chmod +x start.sh
./start.sh
同步日记
python3 sync_diary.py
访问地址
本地部署
- 主页: http://127.0.0.1:8001/
- API: http://127.0.0.1:8001/api/entries/
- Admin: http://127.0.0.1:8001/admin/
云服务器部署
- 主页: http://cssc.datalibstar.com:8001/
- API: http://cssc.datalibstar.com:8001/api/entries/
- Admin: http://cssc.datalibstar.com:8001/admin/
⚠️ 注意:如果无法访问云服务器,请在腾讯云控制台安全组中开放端口 8001
API 接口
日记
GET /api/entries/- 获取所有日记GET /api/entries/today/- 获取今天的日记GET /api/entries/recent/- 获取最近 7 天的日记GET /api/entries/stats/- 获取统计信息POST /api/entries/- 创建日记PUT /api/entries/{id}/- 更新日记
经验总结
GET /api/experiences/- 获取所有经验GET /api/experiences/recent/- 获取最近 10 条经验GET /api/experiences/by_category/- 按类别分组POST /api/experiences/- 创建经验总结PUT /api/experiences/{id}/- 更新经验
数据库
使用现有的 PostgreSQL 数据库 (cssc),自动创建以下表:
diary_diaryentry- 日记条目diary_dailyprogress- 每日进度
与城市手册的区别
- 端口不同(日记系统用 8001/8002,城市手册用 80/8000)
- 更轻量级的前端
- 专注于个人日记和进步追踪
Description
Languages
Markdown
100%