我不确定我是否正确地措辞我的问题。我实际上根本不确定该怎么做。
我有一个网站load.html
。在这里,我可以使用文本框输入ID,例如123
,并且该页面将显示一些信息(通过javascript函数检索,从烧瓶服务器调用AJAX)。
我也有一个网站account.html
。在这里,它显示了与帐户关联的所有ID。我想这样做,因此,如果您单击account.html
中的ID,它将转到load.html
并显示所需的信息。
基本上,按下链接后,我需要将URL更改为load.html
,然后调用JavaScript函数以显示与ID相关联的信息。
我的原始想法是在烧瓶中使用变量路线,例如@app.route('/load/<int:id>')
,而不是简单的@app.route('/load')
但是,所有/load
的功能都是显示load.html
,实际上没有加载信息。这是在我之前谈论的JavaScript函数中完成的。
我不确定该怎么做。有什么想法吗?
如果我需要解释更多,请告诉我。谢谢!
为了更清楚,我可以转到load.html
并从Web控制台调用JavaScript函数,并且可以正常工作。我只是不确定如何使用烧瓶中的变量路线(是正确的方式?),因为显示信息取决于某些JavaScript以解析烧瓶返回的数据。
烧瓶代码加载load.html
@app.route('/load')
def load():
return render_template('load.html')
烧瓶代码返回信息
@app.route('/retrieve')
def retrieve():
return jsonify({
'in':in(),
'sb':sb(),
'td':td()
})
/retrieve
只是从数据库中返回数据结构,然后由JavaScript解析并输出到HTML中。现在我想了,我想变量路由必须检索吗?现在,我正在使用Ajax发送ID,我应该将其更改为/retrieve/<int:id>
吗?但是,我将如何从示例/retrieve/5
中检索信息?在Ajax中,我只能在成功方法下使用data
,但不能用于简单的网址。
如果将数据传递到浏览器URL中为
,则假设www.example.com/retrieve?Data=5
您可以像
一样获得数据值dataValue = request.args.get('Data')
您可以在URL中指定param,例如 /retrieve/<page>
它可以在烧瓶中使用几种方式。
一种方法是
@app.route('/retrieve/', defaults={'page': 0})
@app.route('/retrieve/<page>')
def retrieve():
if page:
#Do page stuff here
return jsonify({
'in':in(),
'sb':sb(),
'td':td()})
另一种方法是
@app.route('/retrieve/<page>')
def retrieve(page=0):
if page:
#Do your page stuff hear
return jsonify({
'in':in(),
'sb':sb(),
'td':td()
})
注意:您也可以像<int:page>