数据库结构
PostgreSQL 15 — 42+ 数据表、19 视图、196 函数、RLS 安全策略
数据库通过 Flyway 管理迁移(版本化 + 追踪)。迁移格式:V1.0.x__action_object.sql。SQL 文件不使用中文,Cron = UTC。
核心表分类
用户与认证
auth.users— GoTrue 管理的用户表(不可直接查询,需通过 RPC)profiles— 用户资料(RLS 严格保护,客户端必须查public_profilesview)public_profiles— 公开用户资料视图(已过滤敏感信息)
内容系统
articles— 文章主表(标题、内容、状态、类型)columns— 专栏表(is_community = false为普通专栏,true为文社)tags/sections/subcategories— 标签、分类、子类体系comments— 评论表
创作台
writing_projects— 项目主表(类型、状态、可见性)story_bible_entities— 故事资料库实体(6 种类型)entity_relationships— 实体关联关系story_nodes— 大纲节点(5 层树形结构,含parent_id自引用)project_timelines/timeline_events— 多时间线与事件
社交与互动
messages/conversations— 私信系统notifications— 通知系统follows/bookmarks/likes— 社交互动
激励体系
points_transactions— 积分流水badges/user_badges— 徽章与用户获得virtual_goods/purchases— 虚拟商品与购买记录
运营管理
events— 活动表(TEXT + CHECK 约束,非 enum)moderation_queue/moderation_logs— 审核队列与日志sms_verification_codes/sms_send_logs— 短信验证
重要规则
- 禁止直接查询
profiles表 → 使用public_profilesview - 不能 join
auth.users(PostgREST 限制) → 使用 RPC 或分开查询 - Events 表不使用 PostgreSQL enum → 使用 TEXT + CHECK 约束