实现搜索功能

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)
复制代码
posted @ 2017-12-20 21:42  074罗桦  阅读(171)  评论(0编辑  收藏  举报