1.1 KiB
1.1 KiB
社群模块 SQLite 存储
默认使用 SQLite,无需 PocketBase、MinIO 等外部依赖。图片上传保存到本地目录。
配置
| 环境变量 | 说明 | 默认 |
|---|---|---|
| COMMUNITY_STORAGE | sqlite | pocketbase |
sqlite |
| COMMUNITY_DATA_DIR | 数据目录(含 db、uploads) | ./data |
| BASE_URL | 用于拼接图片 URL | 见主配置 |
文件结构
data/
├── community.db # SQLite 数据库
└── community_uploads/ # 上传图片
└── 1731234567_abc123.jpg
表结构(community_memos)
| 字段 | 类型 | 说明 |
|---|---|---|
| id | TEXT | 主键 |
| user_id | TEXT | 发布者 |
| content | TEXT | 内容 |
| pinned | INTEGER | 置顶 0/1 |
| visibility | TEXT | PRIVATE/PROTECTED/PUBLIC |
| state | TEXT | NORMAL/ARCHIVED |
| created | TEXT | ISO 时间 |
| updated | TEXT | ISO 时间 |
启动时自动建表
app/services/community.py 加载时自动执行 init_schema(),无需手动迁移。
切换 PocketBase
COMMUNITY_STORAGE=pocketbase
需配置 PocketBase 和 MinIO(图片上传)。