實現搜索功能

一、準備視圖函數search()html

@app.route('/search/')
def search():
      pass

 

二、修改base.html 中搜索輸入框所在的sql

<form action="{{ url_for('search') }}" method="get">app

   <input name="q" type="text" placeholder="請輸入關鍵字">

函數

<form action="{{ url_for('search') }}" method="get" class="navbar-form navbar-left" role="search">
        <div class="form-group">
            <input type="text" name="q" placeholder="請輸入關鍵字" class="search-input" class="form-control"/>
        </div>
        <button type="submit" class="btn btn-default">查找</button>
    </form>

 

三、完成視圖函數search() url

      獲取搜索關鍵字
     q = request.args.get('q’)spa

     條件查詢
     qu = Question.query.filter(Question.title.contains(q)).order_by('-creat_time’)code

     加載查詢結果:
     return render_template('index.html', question=qu)

orm

@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('admin.html', question=ques)

 

四、組合條件查詢
      from sqlalchemy import or_, and_htm

@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('-creat_time')

    return render_template('admin.html', question=ques)
相關文章
相關標籤/搜索