diff --git a/app/api/news.py b/app/api/news.py index 119779d..e2eca2a 100644 --- a/app/api/news.py +++ b/app/api/news.py @@ -118,8 +118,10 @@ async def list_articles( ) if source: if '/' in source: - # 신문사/분야 형태 → ai_tags로 필터 - query = query.where(Document.ai_tags.cast(String).contains(source)) + # 신문사/분야 형태 → file_path에서 폴더명 매칭 + # source = "경향신문/문화" → file_path LIKE 'news/경향신문 문화/%' + folder = source.replace('/', ' ') + query = query.where(Document.file_path.like(f"news/{folder}/%")) else: # 신문사만 → ai_sub_group query = query.where(Document.ai_sub_group == source)