实现搜索功能
1.准备视图函数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" class="navbar-form navbar-left"> <input name="q" type="text" cols="40" rows="1" class="soua" placeholder="请输入关键字"> <button type="submit" class="soub">查找</button> </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)
4.组合条件查询
from sqlalchemy import or_, and_
@app.route('/search/') def search(): qu = request.args.get('q') ques = Question.query.filter( or_( Question.title.contains(qu), Question.detail.contains(qu) ) ).order_by('-create_time') return render_template('index.html',question = ques)