如何进行多选项搜索查询?

时间:2017-08-09 09:14:07

标签: flask flask-sqlalchemy

我正在尝试创建一个包含多个选项的完整搜索查询,查询可能包含None值,具体取决于用户,所以假设我正在寻找另一个用户提供的服务,所以我可能会这样做:

按标题提供服务

按用户名服务

按价格服务(最低,最高)

服务类型(折扣,免费)

我可以使用上述选项之一进行搜索。

这是我的问题:

if request.method == 'POST':
    if search_form.validate_on_submit():
        service = search_form.service_name.data
        master = search_form.master_name.data
        start_price = str(search_form.min_price.data)
        finish_price = str(search_form.max_price.data)

        fullname = master.split()

        results = Service.query.join(Abonent, Abonent.id == Service.user_id).filter(Service.title.ilike("{}%".format(service))).filter(Abonent.name.ilike("{}%".format(fullname[0]))).filter(Abonent.price.between(start_price, finish_price)).all()

现在,如果我通过服务标题搜索,我什么都没有,也是休息,但如果我按价格搜索我没有得到任何结果,请,任何帮助工作???

0 个答案:

没有答案