python的flask框架下不同路由之间传递变量的一种办法

Posted 青女素娥

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python的flask框架下不同路由之间传递变量的一种办法相关的知识,希望对你有一定的参考价值。

我查了一下解决这个问题的办法,一般是设定全局变量,今天介绍一种新办法

上代码difrouters.py

from flask import Flask, render_template
app = Flask(__name__)

class DataStore():
    a = None
    c = None

data = DataStore()

@app.route("/index")
def index():
    a=3
    b=4
    c=a+b
    data.a=a
    data.c=c
    return render_template("index.html",c=c)

@app.route("/dif")
def dif():
    d=data.c+data.a
    return render_template("dif.html",d=d)

if __name__ == "__main__":
    app.run(debug=True)

index.html

<html>
<head>
  <title>Home</title>
</head>
<body>
  结果c={{ c }}
</body>
</html>

dif.html

<html>
<head>
  <title>different router</title>
</head>
<body>
  结果d={{ d }}
</body>
</html>

运行结果

在路由index上的结果

 

 在路由dif上的结果

 

 代码见https://github.com/qingnvsue/flask 中的difrouters文件夹

以上是关于python的flask框架下不同路由之间传递变量的一种办法的主要内容,如果未能解决你的问题,请参考以下文章

Python中Flask框架的变量和函数

Python3 Flask 路由变量显示为变量名而不是从邮递员传递的值

doraemon的python Flask框架 路由和配置

Flask框架搭建虚拟环境教程(Linux)

Flask框架搭建虚拟环境教程(Linux)

Python轻量级Web框架Flask——Flask路由参数/Flask请求与响应/重定项/异常处理