我应该如何在SQLAlchemy中为多个请求参数构造过滤器?

时间:2014-12-25 16:26:00

标签: sqlalchemy flask-sqlalchemy

我是新手Flask,SQLAlchemy并尝试使用flask-sqlalchemy开发应用程序。

从该accept 2请求paratemer,firstname和lastname中搜索web。构建搜索条件的最原始方法就是这样。如果请求参数不为空,则为多个过滤器。

def search():
   rs = User.query      
   if not request.arg.get('firstname'):
         rs = rs.filter(User.firstname=requst.arg.get('firstname'))
   if not requst.arg.get('lastname'):
         rs = rs.filter(User.lastname=requst.arg.get('lastname'))
   rs.all()

不要这样做。如果查询过滤器在请求参数为空字符串时无效,则查询将以这种方式修复。我希望这样做。

   rs = User.query.\
        filter(User.firstname=requst.arg.get('firstname')).\
        filter(User.lastname=requst.arg.get('lastname')).\
        all()

如何构建具有多个请求参数的过滤器?

0 个答案:

没有答案