字符串如何传递给SQLAlchemy的.like()方法

前端之家收集整理的这篇文章主要介绍了字符串如何传递给SQLAlchemy的.like()方法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用sqlAlchemy在Flask上构建一个界面,其中一部分是一个搜索API.基本上一个预先输入的输入是使用它的值来调用服务器(例如一个电子邮件),然后服务器使用如下所示的过滤器中的.like来执行sqlalchemy查询
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的术语后,尽管数据库中存在匹配的项目,但没有返回结果.

任何帮助非常感谢.

问题得到解决查询位于较大的查询构建器函数中,该函数函数后面对查询应用了限制和偏移量,因为limit和offset高于返回的结果集为空的结果量.

可以克服这个错误的人为错误和睡眠不足.

猜你在找的Ajax相关文章