1.准备视图函数search()
@app.route(‘/search/‘) def search():
2.修改base.html 中搜索输入框所在的
a.<form action="{{ url_for(‘search‘) }}" method="get">
b. <input name="q" type="text" placeholder="请输入关键字">
<form action="{{ url_for(‘search‘) }}" method="get"> <li><input name =‘q‘ type="text" placeholder="请输入您要搜索的关键字..."> <button type="submit"></button></li> </form>
3.完成视图函数search()
a.获取搜索关键字
q = request.args.get(‘q’)
b.条件查询
qu = Question.query.filter(Question.title.contains(q)).order_by(‘-creat_time’)
c.加载查询结果:
return render_template(‘index.html‘, question=qu)
@app.route(‘/search/‘) def search(): qu=request.args.get(‘q‘) ques = Question.query.filter(Question.title.contains(qu)).order_by(‘-creat_time‘) return render_template("base.html",questions=ques)
4.组合条件查询
from sqlalchemy import or_, and_
ques = Question.query.filter(or_(Question.title.contains(qu), Question.detail.contains(qu))).order_by(‘-creat_time‘)