首页 > 数据库 >flask+python+html+mongodb

flask+python+html+mongodb

时间:2024-10-23 16:48:31浏览次数:8  
标签:name flask request python html lingyu data id

 

python

运行此文件,跳转到index.html

from flask import Flask,render_template,request,jsonify,json,url_for,redirect
app = Flask(__name__)
@app.route('/', methods=['GET', 'POST'])
def index():
    return render_template('index.html')
if __name__ == '__main__':
    app.run()

html调用python中的方法,并返回数据给html

python

@app.route('/author', methods=['GET', 'POST'])
def result():
    if request.method == 'POST':     
        data = request.get_json()
        lingyu = data['lingyu']
        name = data['name']
        print(lingyu)
        print(name)
        mydb = myclient["Fields_authors"] 
        mycol = mydb[lingyu]
        cursor =mycol.find( {
            "pub_papers.displayName":{ "$regex": name} 
        })
        cursor2 =mycol.find( {
            "pub_papers.description":{ "$regex": name} 
        })
        res=[]
        for t in cursor:
            t.pop('_id')
            res.append(t) 
        for t2 in cursor2:
            t2.pop('_id')
            res.append(t2) 
        return res

html

var data = {
                'lingyu': document.getElementsByClassName('lingyu_click')[0].innerText,
                'name': document.getElementById('search_input').value//去掉开头,结尾的空格
            };
            var jsonData = JSON.stringify(data);
            var xhr = new XMLHttpRequest();
            xhr.open('POST', '/author', true);
            xhr.setRequestHeader('Content-type', 'application/json');
            xhr.onreadystatechange = function () {
                if (xhr.readyState === 4 && xhr.status === 200) {
                    result = JSON.parse(xhr.responseText);
                    console.log("success", result);
                    hideLoading()
                    document.getElementById("search_item").hidden = false;
                    ul_add_li(result);
                    click_after();

                }
            };
            xhr.send(jsonData);

html点击按钮从index.html跳转到tt.html

python

@app.route('/tt')
def tt():
   
    # 获取作者相关信息
    myCCFgraph = myclient["CCFgraph"] 
    myAuthors = myCCFgraph['authors']
    myquery = { "id": int(request.args.get('id')) }
    mydata = myAuthors.find(myquery)
    res=[]
    for t in mydata:
        t.pop('_id')
        res.append(t) 
     # 获取主页参数
    response = {
        "username":request.args.get('username'),
        "user_id":request.args.get('id'),
        "lingyu":request.args.get('lingyu'),
    }
    #team= rangeepsilon(request.args.get('id'),request.args.get('lingyu'))
    return render_template('tt.html', author=response,author1=res)

index.html

var data = {
            'id': data.id,
            'displayName': data.displayName,
            'lingyu': lingyu
        };
        var url = '/tt?username=' + encodeURIComponent(data.displayName) + '&id=' + data.id + '&lingyu=' + encodeURIComponent(lingyu);

        // 跳转到构建的URL
        window.location.href = url;

tt.html接收参数

html可以直接使用

<span class="topdestext">作者:{{author.username}}</span>
            {% for row in author1 %}
            <span class="topdestext">单位:<span id="dept">{{row.institutions[0].displayName}}</span></span>
            <span class="topdestext">论文:<span id="paper">{{row.pub_papers[0].displayName}}</span></span>
            {% endfor %}

js中接收参数

  var paramData = {
        name: "{{ author.username }}",
        id: "{{ author.user_id }}",
        lingyu: "{{ author.lingyu }}",
    };

 

标签:name,flask,request,python,html,lingyu,data,id
From: https://www.cnblogs.com/ljingjing/p/18497765

相关文章

  • 基于python的足球比赛数据及可视化 python 足球预测
    那么四年一度的世界杯即将要在卡塔尔开幕了,对于不少热爱足球运动的球迷来说,这可是十分难得的盛宴,而对于最后大力神杯的归属,相信很多人都满怀着期待,每个人心中都有不同的答案。软件免费下载:http://lcsjfx.com/SoccerPredictor/DownLoad今天小编就通过Python数据分析以及机器......
  • 安工PTA自主智能体1-10题python
    7-1jmu-Java&Python-统计一段文字中的单词个数并按单词的字母顺序排序后输出a=input()b=[]whilea!="!!!!!":a=a.split()foriinrange(len(a)):b.append(a[i])a=input()b=list(set(b))b=sorted(b)print(len(b))iflen(b)<......
  • (分享源码)计算机毕业设计必看必学 上万套实战教程手把手教学JAVA、PHP,node.js,C++、pyth
    摘 要大数据时代下,数据呈爆炸式地增长。为了迎合信息化时代的潮流和信息化安全的要求,利用互联网服务于其他行业,促进生产,已经是成为一种势不可挡的趋势。在网络小说的要求下,开发一款整体式结构的小说网站,将复杂的系统进行拆分,能够实现对需求的变化快速响应、系统稳定性的保......
  • 计算机毕业设计项目推荐,基于协同过滤算法的短视频推荐系统设计与实现30213(开题答辩+程
    摘 要现阶段,社会的发展和科技的进步,以及大数据时代下纷繁数据信息的融合,使得人们在生产及生活过程中,都将会接收到各种类型的数据信息,而通过计算机技术与网络技术,则能够将众多人们所不了解或不常用的信息,以简单的模式转化并传递给人们,使得人们的生产及生活质量得以显著提升......
  • 计算机毕业设计项目推荐:基于Web的社区人员管理系统的设计36303(开题答辩+程序定制+全套
    摘要科技进步的飞速发展引起人们日常生活的巨大变化,电子信息技术的飞速发展使得电子信息技术的各个领域的应用水平得到普及和应用。信息时代的到来已成为不可阻挡的时尚潮流,人类发展的历史正进入一个新时代。在现实运用中,应用软件的工作规则和开发步骤,采用ASP.NET技术建设社......
  • python 爱心代码
    今天看到一段python爱心代码,后面测试跑跑importrandomfrommathimportsin,cos,pi,logfromtkinterimport*CANVAS_WIDTH=640CANVAS_HEIGHT=480CANVAS_CENTER_X=CANVAS_WIDTH/2CANVAS_CENTER_Y=CANVAS_HEIGHT/2IMAGE_ENLARGE=11设置颜色HEART_COLO......
  • S3架設靜態HTML網站
    1.0前言 玩startup項目,想快速建立靜態HTML網站。 2.0S3架設靜態HTML網站2.1CreateS3bucket 建立新的S3桶。2.2GeneralS3Config填寫S3桶名。剔除"禁止公開訪問",剔選"已知風險"。2.3S3Permissions 進入“my-s3-html-example”桶,再到Permissions頁面。......
  • 使用Python ftplib库进行封装FTP自动下载
    fromftplibimportFTPfrombaseapi.loggerimportMyLoggerlogger=MyLogger.get_logger()classFTPUtils:ftp=FTP()ftp.set_pasv(False)def__init__(self,username,password,host,port=21):"""用于FTP站点初始化......
  • Python爬虫:API接口数据的“美食侦探”
    亲爱的代码美食家们,今天咱们不聊那些让人头秃的bug,也不谈那些让人眼花的架构图。咱们来聊聊那些在代码世界里寻找美食的“美食侦探”——Python爬虫。Python爬虫:API接口数据的“美食侦探”想象一下,你在代码的世界里,遇到了一个充满美食的餐厅——一个提供丰富数据的API接口。......
  • 基于Django+Python的宾馆管理系统设计与实现
    项目运行需要先安装Python的相关依赖:pymysql,Django==3.2.8,pillow使用pipinstall安装第一步:创建数据库第二步:执行SQL语句,.sql文件,运行该文件中的SQL语句第三步:修改源代码中的settings.py文件,改成自己的mysql数据库用户名和密码第四步:运行命令:pythonmanage.pyrunser......