是否可以在render_template之前将数据传递给Flask?

我有一个渲染页面,我一个简单的瓶功能:是否可以在render_template之前将数据传递给Flask?

@app.route('/') 

def main_page():

return render_template("index.html")

我的问题是,是否有可能从它位于我index.html文件传回瓶的main_page功能的JavaScript函数传递变量在它完全呈现之前?

这里是我的html文件:

<head> 

<title>My Title</title>

</head>

<body>

// HTML content

<script>

firebase.auth().onAuthStateChanged(firebaseUser => {

if (firebaseUser) {

var myVar = "content"

}

});

</script>

</body>

我想是这样的:

@app.route('/') 

def main_page():

# 1. get the myVar variable from the JS code located in the same index.html page

# 2. check the variable and pass a variable to the Jinja template based on myVar's content

if myVar is something:

return render_template("index.html", text = "something A")

else:

return render_template("index.html", text = "something B")

所以我不希望获得来自文本框的内容,我会接受吗通过JS代码。我想加载一次'/'路由,并根据myVar变量的内容决定要传入Jinja模板的数据。如果这是不可能的,是否有任何技巧或替代技术可以产生几乎相同的结果?

回答:

鉴于您正在访问第三方API并且未将应用程序中的任何数据保存到数据库,因此不需要将HTTP请求发送回瓶型应用程序。状态可以在客户端处理,只需更新HTML w/JQuery即可。

// in callback 

$('target').val('newval');

以上是 是否可以在render_template之前将数据传递给Flask? 的全部内容, 来源链接: utcz.com/qa/260344.html

回到顶部