在 SQLAlchemy 的 session.query 中使用 like 运算符和 request.args.get

Lin*_*ser 3 python ajax sqlalchemy request

我成功地能够使用以下查询使用等于运算符从数据库中获取结果:

return session.query(Employees).filter_by(EmployeeName=request.args.get('Name'))
Run Code Online (Sandbox Code Playgroud)

员工是阶级

“Name”属性通过 ajax 调用填充

我不确定如何使用 like 运算符而不是等于?

我尝试做这样的事情但没有成功

return session.query(Employees).filter(Employees.EmployeeName.like(request.args.get('%Name%')))
Run Code Online (Sandbox Code Playgroud)

Ilj*_*ilä 5

'%' || expr || '%'要进行简单比较的快捷方式,请使用以下contains()提供的方法ColumnOperators

session.query(Employees).\
    filter(Employees.EmployeeName.contains(request.args.get('Name')))
Run Code Online (Sandbox Code Playgroud)

请注意,可能的通配符不会被转义,因此如果Name包含它们,它们的行为也会如此。