[英]Display a plotly choropleth inside a html page which is rendered using flask
[英]Flask - Get clicked link info and display on rendered page
如何将点击链接的文本获取到 app.route 函数中?
例如:假设我有一个链接列表,所有这些链接都指向相同的 url,但每个链接加载不同的内容。
<li><a href="/animals">cat</a></li>
<li><a href="/animals">dog</a></li>
<li><a href="/animals">dragon</a></li>
当我单击“猫”时,我需要检索“猫”这个词以及 /animals 的渲染模板
@app.route('/animals', methods=['GET', 'POST'])
def animals():
selected_animal = get_clicked_animal_name_from_previous_page()
return render_template(animals.html', title='Animal Details', animal=selected_animal)
像 get_clicked_animal_name_from_previous_page() 这样的函数可能吗?
您可以像这样通过request.args传递参数:
<li><a href="{{url_for('animals', type='cat')}}">cat</a></li>
<li><a href="{{url_for('animals', type='dog')}}">dog</a></li>
<li><a href="{{url_for('animals', type='dragon')}}">dragon</a></li>
并像这样接收它:
@app.route('/animals', methods=['GET', 'POST'])
def animals():
selected_animal = request.args.get('type')
print(selected_animal) # <-- should print 'cat', 'dog', or 'dragon'
return render_template(animals.html, title='Animal Details', animal=selected_animal)
您可以稍微更改每只animal
的href
以重定向到animals/<animal>
路线。 这样, <animal_type>
将被传递给路由函数以供以后使用:
<li><a href="/animals/cat">cat</a></li>
<li><a href="/animals/dog">dog</a></li>
<li><a href="/animals/dragon">dragon</a></li>
然后,在应用程序中:
@app.route('/animals/<animal>', methods=['GET'])
def animals(animal):
return render_template('animals.html', title='Animal Details', animal=animal)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.