修改之前路由有q跟page两个参数,这个时候使用注释掉的那一段代码是可以获取到数据的,去掉之后用没注释掉的代码却一直是返回404,请老师指点一下。
@web.route('/book/search')
def search():
'''
根据q获取关键字或者是isbn,视图函数要尽量简洁易读,所以要对逻辑进行封装,
对于传入的参数需要进行验证
'''
# isbn_or_key = is_isbn_or_key(q)
# if isbn_or_key == 'isbn':
# res = YuShuBook.search_by_isbn(q)
# else:
# res = YuShuBook.search_by_keyword(q, page)
# return jsonify(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 = YuShuBook.search_by_isbn(q)
else:
res = YuShuBook.search_by_keyword(q, page)
return jsonify(res)
return jsonify(form.errors)
7月老师深入浅出剖析Flask核心机制,和你一起探讨Python高级编程
了解课程