diff --git a/app/api/endpoints/history.py b/app/api/endpoints/history.py index 5563b3de..8b297172 100644 --- a/app/api/endpoints/history.py +++ b/app/api/endpoints/history.py @@ -1,10 +1,12 @@ from typing import List, Any +import jieba from fastapi import APIRouter, Depends from sqlalchemy.orm import Session from app import schemas from app.chain.storage import StorageChain +from app.core.config import settings from app.core.event import eventmanager from app.core.security import verify_token from app.db import get_db @@ -57,6 +59,9 @@ def transfer_history(title: str = None, status = True if title: + if settings.TOKENIZED_SEARCH: + words = jieba.cut(title, HMM=False) + title = "%".join(words) total = TransferHistory.count_by_title(db, title=title, status=status) result = TransferHistory.list_by_title(db, title=title, page=page, count=count, status=status) diff --git a/app/core/config.py b/app/core/config.py index 9d04c6af..66e5d2dd 100644 --- a/app/core/config.py +++ b/app/core/config.py @@ -240,6 +240,8 @@ class ConfigModel(BaseModel): RENAME_FORMAT_S0_NAMES: List[str] = Field( default_factory=lambda: ["Specials", "SPs"] ) + # 启用分词搜索 + TOKENIZED_SEARCH: bool = False class Settings(BaseSettings, ConfigModel):