# 定义主页相关的 import math from flask import Blueprint, render_template, jsonify from module.article import Article from module.user import Users index = Blueprint("index",__name__) @index.route('/') def home(): article = Article() result = article.find_limit_with_user(0,10) # 默认查找所有的文章,并以10篇文章为一页进行分页 total = math.ceil(article.get_total_count() / 10) # # 主页渲染一遍侧边栏 # side_new, side_recommend, side_most = article.side_method() # return render_template('index.html',result=result,total = total,page = 1,side_new=side_new,side_most=side_most,side_recommend=side_recommend) return render_template('index.html',result=result,total = total,page = 1) @index.route('/page/') def paginate(page): start = (page-1)*8 #因为目前只有17个数据,每8个分一页可以有三页 article = Article() result = article.find_limit_with_user(start,8) total = math.ceil(article.get_total_count() / 10) return render_template('index.html',result = result,total = total,page=page) @index.route('/type/-') def classify(type,page): # 目前数据库只有 1情感 2商业 3健康 三种类型 start = (page - 1)*3 # 数据较少,按3个一页先用着 article = Article() result = article.find_by_type(type = type ,offset=start,limit=3) total = math.ceil(article.get_total_count_by_type(type=type) / 3) return render_template('type.html',result=result,total=total,type=type,page=page) # 根据文章标题进行模糊搜索 @index.route('/search/-') def search(page,keyword): start = (page - 1)*3 article = Article() result = article.find_by_headline(headline=keyword,offset=start,limit=3) total = math.ceil(article.get_total_count_by_like_headline(headline=keyword) // 3) return render_template('search.html',result=result,total=total,keyword=keyword,page=page) @index.route('/recommend') def recommend(): article = Article() last, most, recommended = article.side_method() last_list,most_list,recommended_list = article_list(last),article_list(most),article_list(recommended) list = [] list.append(last_list) list.append(most_list) list.append(recommended_list) return jsonify(list) # 转json内用函数 def article_list(list): re_list = [] for i in list: dict = {} dict['articleid'] = i.articleid dict['headline'] = i.headline re_list.append(dict) return re_list @index.route('/adminface') def adminface(): article = Article() article_information = article.find_all() user = Users() user_information = user.find_all_users() return render_template('admin_interface.html', article_information=article_information,user_information=user_information)