flask搭建后台

一、课设的后台搭建

from flask import Flask
from flask import render_template
from flask import jsonify  # 字典换成json字符串
import utils

app = Flask(__name__)


@app.route('/')
def main():
    # 返回哪个页面
    return render_template("/web/main.html")

#统计框
@app.route("/c1")
def get_c1_data():
    data = utils.get_c1_data()
    return jsonify({
        "movienum": data[0],
        "countrynum": data[1],
        "categraynum": data[2]
    })

#
@app.route("/c2", methods=["GET"])
def get_c2_data():
    data = utils.get_c2_data()
    d=[]
    for k,v in data:
        d.append({"name":k,"value":v});
    return jsonify({"kws":d})

@app.route("/r2", methods=['GET'])
def get_r2_data():
    data = utils.get_r2_data()
    showc = []
    for b in data:
        showc.append(int(b))
    return jsonify({"showc": showc})

@app.route("/l3", methods=["GET"])
def get_l3_data():
    data = utils.get_l3_data()
    d=[];c=0
    for k,v in data:
        d.append({"name":k,"value":v})

    return jsonify({"kws":d})

@app.route("/r1", methods=["GET"])
def get_r1_data():
    data = utils.get_r1_data()
    director = []
    dirc = []
    exc = ['未录入', '未知'];c=0
    for k, v in data:
        if(k not in exc and c<10):
            c+=1
            director.append(k)
            dirc.append(int(v))
        #   print(director,dirc)
    return jsonify({"director": director, "dirc": dirc})

@app.route("/l1", methods=["GET"])
def get_l1_data():
    data = utils.get_l1_data()
    dataj=data[0]
    datax=data[1]
    dataa=data[2]
    d_2019 = [];d_2020=[];d_2021=[];d_type=[]
    for item in data:
        d_type.append(item[0])
        d_2019.append(item[1])
        d_2020.append(item[2])
        d_2021.append(item[3])

    return jsonify({
        "jcountry": d_type,
        "jrate": d_2019,
        "xrate": d_2020,
        "arate": d_2021
    })

@app.route("/l2", methods=["GET"])
def get_l2_data():
    data = utils.get_l2_data()
    lan = []
    lanc = []
    for k, v in data:
        if(k!='未录入'and k!="其它" and k!="其他"):
            lan.append(k)
            lanc.append(int(v))
# print(language,lanc)
    return jsonify({"lan":lan,"lanc":lanc})

@app.route("/r4", methods=["GET"])
def get_r4_data():
    data = utils.get_l3_data()
    datac=list(data)
    ss=0
    for i in range(len(data)):
        if(ss<10):
            datac[i]=list(data[i])
            ss+=1
    k="d"
    m=["b"]
    m[0]=datac
    w = dict(zip(k, m))
    return w




if __name__ == '__main__':
    app.run()

二、前端地图js文件

function get_c1_data() {
    $.ajax({
        // type:"post",//请求类型
        url: "/c1", //请求地址
        // data: { //发送到/读取后台(服务器)的数据
        success: function(data) { //成功时执行
            $(".mainbox .column .no .no-hd li").eq(0).text(data.movienum);
            $(".mainbox .column .no .no-hd li").eq(1).text(data.countrynum);
            $(".mainbox .column .no .no-hd li").eq(2).text(data.categraynum);
        },
        error: function(xhr, type, errorThrown) {
            print("c1出错了!")
        }
    })
}

get_c1_data()
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值