b2d043b2312a29bb6551df9b755fec359552d389
- 用户管理:新增编辑弹窗(修改用户名/角色/密码),增加组织/创建时间/最后登录列 - 角色管理:新增 Role 模型 + CRUD API,admin.html 新增角色管理 tab - 菜单管理:新增 Menu 模型 + CRUD API,导航栏从 API 动态加载菜单项 - 个人中心:右上角下拉菜单(个人信息/修改密码/退出),新增修改密码 API - 种子数据:initial_data.py 自动创建默认角色(admin/editor)和默认菜单(7项) - 修复 research.py 缺少 enrich_topic_research 函数导致导入失败 - 修复 db_helper.py 中 generated_at 条件导致重创作不更新时间戳 - admin.html 操作列加宽防止按钮换行,平台配置增加删除按钮 - articles.html 预览弹窗加 lock-scroll=false 防止页面尺寸跳动
宇之然内容创作平台
覆盖"选题→创作→审核→发布→数据追踪"全链路的内容运营工具
最后更新: 2026-05-12
项目进度 → 详见 PROGRESS.md(本文件为唯一进度真理源)
技术栈
| 层次 | 技术 |
|---|---|
| 后端 | FastAPI 0.104+ |
| ORM | SQLAlchemy 2.0+ |
| 数据库 | PostgreSQL 15 |
| 前端 | Vue 3 (CDN) + Element Plus |
| 认证 | JWT (python-jose) + bcrypt |
数据库配置
USE_POSTGRES=true
PG_HOST=127.0.0.1
PG_PORT=5432
PG_DATABASE=yzr_nr
PG_USER=yzr_nr
PG_PASSWORD=aTX3WKKnPfRnM5PC
启动方式
cd /root/openclaw-workspace/projects/yu-zhi-ran
./start-platform.sh 8001
默认管理员: admin / admin123
页面入口
API 模块
| 模块 | 文件 | 功能 |
|---|---|---|
| 认证 | auth.py | 登录/注册/JWT |
| 选题 | topics.py | CRUD、评分、批量操作 |
| 选题配置 | topic_config.py | 领域/评分字段/状态配置 |
| 文章 | articles.py | 文章管理 |
| 发布 | publishing.py | 发布记录 |
| 内容日历 | calendar.py | 排期、绑定选题 |
| 数据分析 | metrics.py | 仪表盘、趋势、推荐 |
| 素材库 | assets.py | 上传、标签、搜索 |
| 创作任务 | tasks.py | 异步任务、进度管理 |
| 平台配置 | platform_config.py | 知乎/微信/小红书 |
| 系统管理 | admin.py | 用户/案例/日志/配置 |
数据模型
- TopicField - 领域分类配置
- TopicConfigField - 选题评分字段
- TopicStatusConfig - 选题状态配置
- Topic - 选题主表
- ContentCalendar - 内容日历
- ContentMetrics - 数据追踪
- MediaAsset - 素材库
- PlatformConfig - 平台配置
- ContentTask - 创作任务
- User - 用户
- Case - 案例库
初始化数据
- 领域: 6 个(未来工作方式、AI与效率、可持续生活、数字游民、个人成长、科技人文)
- 状态: 5 种(待处理、待审查、草稿、待发布、已发布)
- 平台: 3 个(知乎、微信公众号、小红书)
- 管理员: admin/admin123
项目结构
yu-zhi-ran/
├── platform/
│ ├── backend/
│ │ ├── app/
│ │ │ ├── api/ # REST API
│ │ │ ├── core/ # 业务逻辑
│ │ │ ├── models.py # SQLAlchemy 模型
│ │ │ ├── schemas.py # Pydantic 验证
│ │ │ ├── database.py # 数据库连接
│ │ │ ├── main.py # FastAPI 入口
│ │ │ └── initial_data.py
│ │ └── venv/
│ └── frontend/ # Vue + Element Plus SPA
├── automation/ # 自动化脚本
├── content/ # 内容数据
└── scripts/ # 工具脚本
Description
Languages
JavaScript
57.7%
Python
22.7%
HTML
18.4%
Shell
0.8%
CSS
0.4%