From 6562d9e5145c674ff370f9495e0b16c8590aa0f5 Mon Sep 17 00:00:00 2001 From: William Tso Date: Mon, 31 Mar 2025 23:01:39 +0800 Subject: [PATCH] tags filter --- app/(app)/events/page.tsx | 5 ++++- lib/clickhouse.ts | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/app/(app)/events/page.tsx b/app/(app)/events/page.tsx index cb35a77..9ff0d26 100644 --- a/app/(app)/events/page.tsx +++ b/app/(app)/events/page.tsx @@ -38,11 +38,14 @@ export default function EventsPage() { try { const response = await fetch('/api/events/tags'); const data = await response.json(); + console.log('API response for tags:', data); // 添加完整日志,查看API响应 + if (data.success) { // 处理嵌套的 data 结构 const tagsData = data.data.data || []; + console.log('Tags data:', tagsData); // 打印实际的标签数据 + setTags(tagsData.map((tag: { tag_name: string }) => tag.tag_name)); - console.log('Fetched tags:', tagsData); // 添加日志,方便调试 } } catch (err) { console.error('Error fetching tags:', err); diff --git a/lib/clickhouse.ts b/lib/clickhouse.ts index 8b5e4f3..43f723d 100644 --- a/lib/clickhouse.ts +++ b/lib/clickhouse.ts @@ -74,7 +74,7 @@ export function buildFilter(params: Partial): string { // 标签筛选 if (params.tags && params.tags.length > 0) { const tagConditions = params.tags.map(tag => - `JSONHas(JSONExtractArrayRaw(link_tags), JSON_QUOTE('${escapeString(tag)}'))` + `positionCaseInsensitive(link_tags, '"${escapeString(tag)}"') > 0` ); filters.push(`(${tagConditions.join(' OR ')})`); }