예제 #1
0
def search():
    # q = request.args['q']
    # page = request.args['page']

    # 数据校验
    form = SearchForm(request.args)
    result = {}
    if form.validate():
        # 如果数据合格
        q = form.q.data
        page = form.page.data
        isbn_or_key = is_isbn_or_key(q)
        if isbn_or_key == 'isbn':
            date = YuShu_Book.search_by_isbn(q)
            result = BookViewModel.package_single(date, q)
        else:
            date = YuShu_Book.search_by_keyword(q, page)
            result = BookViewModel.package_collection(date, q)
        # result = json.dumps(result)
        # return result,200,{'content-type':'application/json'}
        # return jsonify(result)

    else:
        # return jsonify({'msg':'数据校验失败'})
        # return jsonify(form.errors)
        flash('搜索的关键字不符合要求,请重新输入')
    return render_template("search_result.html", books=result)
예제 #2
0
def search():
    """
    :param q:普通关键字 或 isbn
    :param page:
    :return:
    """

    form = SearchForm(request.args)
    if not form.validate():
        return jsonify(form.errors)

    q = form.q.data.strip()
    page = form.page.data
    isbn_or_key = is_isbn_or_key(q)

    if isbn_or_key == 'isbn':
        result = YuShuBook.search_by_isbn(q)
        result = BookViewModel.package_single(result, q)
    else:
        result = YuShuBook.search_by_keyword(q, page)
        result = BookViewModel.package_single(result, q)

    return jsonify(result)
예제 #3
0
def search():
    res = {}
    form = SearchForm(request.args)
    if  form.validate():
        q = form.q.data.strip()
        page = form.page.data
        isbn_or_key = is_isbn_or_key(q)
        if isbn_or_key == 'isbn':
            res = Book.search_by_isbn(q)
            res = BookViewModel.package_single(res,q)
        if isbn_or_key == 'key':
            res = Book.search_by_keyword(q,page)
            res = BookViewModel.package_collection(res,q)
        return jsonify(res)
    else:
        return jsonify({'msg':'参数有误'})
예제 #4
0
def search():
    form = SearchForms(request.args)

    if form.validate():
        q = form.q.data.strip()
        page = form.page.data
        isbn_or_key = is_isbn_or_key(q)
        if isbn_or_key == 'isbn':
            result = YuShuBook.search_by_isbn(q)
            result = BookViewModel.package_single(result, q)
        else:
            result = YuShuBook.search_by_keyword(q, page)
            result = BookViewModel.package_collection(result, q)
        return jsonify(result)
    else:
        return jsonify(form.errors)
예제 #5
0
def search():
    form = SearchForm(request.args)
    if form.validate():
        q = form.q.data.strip()
        page = form.page.data

        key_or_isbn = is_isbn_or_keywords(q)
        if key_or_isbn == "isbn":
            rect = YushuBook.search_by_isbn(q)
            rect = BookViewModel.package_single(rect, q)
        elif key_or_isbn == "key":
            rect = YushuBook.search_by_keyword(q)
            rect = BookViewModel.package_collection(rect, q)

        return jsonify(rect)
    else:
        # return jsonify(dict(message="内部服务器出错", error_code=4000))
        return jsonify(form.errors)
예제 #6
0
def search():
    form = SearchForm(request.args)
    result = {}
    if form.validate():
        q = form.q.data.strip()
        page = form.page.data

        isbn_or_key = is_isbn_or_key(q)
        if isbn_or_key == 'isbn':
            data = YuShuBook.search_by_isbn(q)
            result = BookViewModel.package_single(data, q)
        else:
            data = YuShuBook.search_by_keyword(q, page)
            result = BookViewModel.package_collection(data, q)
        # return jsonify(result)
    else:
        # return jsonify(form.errors)
        flash('搜索的关键字不符合要求,请重新输入关键字')
    return render_template('search_result.html', books=result)
예제 #7
0
def search():
    """
        q :普通关键字 (keyword) isbn
        page
    """
    # 第一种方式 验证方法q,page
    # q = request.args['q']
    # page = request.args['page']
    form = SearchForm(request.args)
    if form.validate():
        q = form.q.data.strip()     # strip()除去q前后存在空格
        page = form.page.data
        isbn_or_key = is_isbn_or_key(q)
        if isbn_or_key == 'isbn':
            result = YuShuBook.search_by_isbn(q)
            result = BookViewModel.package_single(result, q)
        else:
            result = YuShuBook.search_by_keyword(q, page)
            result = BookViewModel.package_collection(result, q)
        return jsonify(result)
    else:
        return jsonify(form.errors)