flask(列表實現)


在 index/views.py 中定義視圖函數

  • 在查詢的時候,如果用戶分類id傳0,則不添加分類查詢條件
@index_blu.route('/newslist') def get_news_list(): """ 獲取指定分類的新聞列表 1. 獲取參數 2. 校驗參數 3. 查詢數據 4. 返回數據 :return: """ # 1. 獲取參數 args_dict = request.args page = args_dict.get("p", '1') per_page = args_dict.get("per_page", constants.HOME_PAGE_MAX_NEWS) category_id = args_dict.get("cid", '1') # 2. 校驗參數 try: page = int(page) per_page = int(per_page) except Exception as e: current_app.logger.error(e) return jsonify(errno=RET.PARAMERR, errmsg="參數錯誤") # 3. 查詢數據並分頁 filters = [] # 如果分類id不為1,那么添加分類id的過濾 if category_id != "1": filters.append(News.category_id == category_id) try: paginate = News.query.filter(*filters).order_by(News.create_time.desc()).paginate(page, per_page, False) # 獲取查詢出來的數據 items = paginate.items # 獲取到總頁數 total_page = paginate.pages current_page = paginate.page except Exception as e: current_app.logger.error(e) return jsonify(errno=RET.DBERR, errmsg="數據查詢失敗") news_li = [] for news in items: news_li.append(news.to_basic_dict()) # 4. 返回數據 return jsonify(errno=RET.OK, errmsg="OK", totalPage=total_page, currentPage=current_page, newsList=news_li, cid=category_id)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM