This commit is contained in:
eric
2026-03-15 04:26:05 -05:00
parent fcf990c133
commit 18d098f5f8
34 changed files with 1300 additions and 0 deletions

45
docs/COMMUNITY_SQLITE.md Normal file
View File

@@ -0,0 +1,45 @@
# 社群模块 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
```bash
COMMUNITY_STORAGE=pocketbase
```
需配置 PocketBase 和 MinIO图片上传