feat(models): add series column to Topic for content columns

Topic model: new series VARCHAR field (optional, indexed)
Schema: series in TopicBase/TopicCreate/TopicUpdate
API: GET /api/topics supports ?series= query param
DB migration: ALTER TABLE topics ADD COLUMN series

Ultraworked with Sisyphus

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
This commit is contained in:
yuzhiran
2026-06-23 13:22:13 +08:00
parent e9cd0374f4
commit f1e6c11505
4 changed files with 8 additions and 0 deletions
+3
View File
@@ -31,6 +31,7 @@ def list_topics(
status: Optional[str] = None,
today: Optional[bool] = None,
tag: Optional[str] = None,
series: Optional[str] = None,
search: Optional[str] = None,
sort_by: str = Query("priority_score", enum=["priority_score", "created_at", "title", "updated_at"]),
order: str = Query("desc", enum=["asc", "desc"]),
@@ -54,6 +55,8 @@ def list_topics(
query = query.filter(func.date(Topic.created_at) == date.today())
if tag:
query = query.filter(Topic.tags.contains([tag]))
if series:
query = query.filter(Topic.series == series)
if search:
query = query.filter(Topic.title.contains(search))