Я создаю интерфейс на Flask с использованием SQLAlchemy, а часть его - API поиска. По существу вход ввода типа требует вызова сервера с его значением (например, электронной почты), а затем сервер выполняет запрос SQLalchemy с использованием .like в фильтре, как показано ниже.
q = session.query(User).filter(User.email.like('%'+term+'%')).all()
Этот запрос не возвращает ничего полезного, и после первых нескольких символов ничего не происходит. Но если я выполняю тот же запрос с термином hardcoded, например:
q = session.query(User).filter(User.email.like('%mysearchterm%')).all()
Он отлично вернет результаты, поэтому есть что-то с тем, как я помещаю этот термин в метод like(), но я действительно не могу понять, в чем проблема. Термин приходит от ajax POST, и значение присутствует на стороне сервера, просто .like() не использует его правильно.
Под "ничего полезного" я имею в виду, что первые наборы результатов, которые возвращаются, не имеют никакого отношения к введенному фактическому члену, после того, как срок больше 3-4, результаты не возвращаются, несмотря на сопоставление элементов, существующих в БД.
Любая помощь очень ценится.