From 28c3296828dde908775fe488b9079539c1149d1c Mon Sep 17 00:00:00 2001 From: tsygankoviva Date: Thu, 27 Aug 2026 17:04:37 +0300 Subject: [PATCH] =?UTF-8?q?backslash-fix:=20=D1=83=D0=B1=D1=80=D0=B0=D0=BB?= =?UTF-8?q?=20=D0=B1=D1=8D=D0=BA=D1=81=D0=BB=D0=B5=D1=88=D0=B5=D0=B2=D1=8B?= =?UTF-8?q?=D0=B5=20=D0=BE=D1=88=D0=B8=D0=B1=D0=BA=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- api/src/repository/project_repository.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/api/src/repository/project_repository.py b/api/src/repository/project_repository.py index d18801d..3a9fc3a 100644 --- a/api/src/repository/project_repository.py +++ b/api/src/repository/project_repository.py @@ -64,8 +64,9 @@ class ProjectRepository: if status_in is not None: query = query.where(Project.status.in_(status_in)) if search is not None and (normalized_search := search.strip()): + normalized_search = normalized_search.replace('\\', '\\\\').replace('%', '\\%').replace('_', '\\_') search_pattern = ( - f"%{normalized_search.replace('\\', '\\\\').replace('%', '\\%').replace('_', '\\_')}%" + f"%{normalized_search}%" ) matching_year_exists = exists( select(1)