zoukankan      html  css  js  c++  java
  • 作业36-实现搜索功能

    1. 准备视图函数search()
    @app.route('/search/')
    def search():
      pass
    1. 修改base.html 中搜索输入框所在的
      1. <form action="{{ url_for('search') }}" method="get">
      2.    <input name="q" type="text" placeholder="请输入关键字">

    <li>
            <form action="{{url_for('search') }}" method="get"   >
            <input class="sea" name="q" type="text" placeholder="请输入关键字">
            <button class="btn btn-default" type="submit">搜索</button> </form>
    </li>
    1. 完成视图函数search()
      1. 获取搜索关键字
        q = request.args.get('q’)
      2. 条件查询
        qu = Question.query.filter(Question.title.contains(q)).order_by('-creat_time’)
      3. 加载查询结果:
        return render_template('index.html', question=qu)
    1. 组合条件查询
      from sqlalchemy import or_, and_

    示例:

    Lobby.query.filter(

        or_(

            and_(

                Lobby.id == Team.lobby_id,

                LobbyPlayer.team_id == Team.id,

                LobbyPlayer.player_id == player.steamid

            ),

          and_(

                Lobby.id == spectator_table.c.lobby_id,

                spectator_table.c.player_id == player.steamid

            )

        )

    )

    @app.route('/search/')
    def search():
        qu = request.args.get('q')
        ques = Sent.query.filter(
            or_(
                Sent.title.contains(qu),
                Sent.detail.constraints(qu)
                )
        ).order_by('creat_time')
        return render_template('shouye.html', username=ques)
  • 相关阅读:
    Python __str__() 方法
    vim快捷键大全
    Python @函数装饰器及用法
    ImportError: No module named typing报错
    centos7安装pycharm2018专业版及破解
    windows下使用pycharm开发基于ansible api的python程序
    一个Windows系统下同时安装Python2和Python3
    django models def __str__(self)
    django model中的class Meta
    nmap命令详解
  • 原文地址:https://www.cnblogs.com/hegui/p/8075634.html
Copyright © 2011-2022 走看看