加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

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

发布时间:2020-12-16 01:35:16 所属栏目:百科 来源:网络整理
导读:我正在使用SQLAlchemy在Flask上构建一个界面,其中一部分是一个搜索API.基本上一个预先输入的输入是使用它的值来调用服务器(例如一个电子邮件),然后服务器使用如下所示的过滤器中的.like来执行SQLalchemy查询 q = session.query(User).filter(User.email.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高于返回的结果集为空的结果量.

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读