我正在尝试创建一个包含多个选项的完整搜索查询,查询可能包含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()
现在,如果我通过服务标题搜索,我什么都没有,也是休息,但如果我按价格搜索我没有得到任何结果,请,任何帮助工作???