如何将点击链接的文本放入 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)
关于python - Flask - 获取点击的链接信息并显示在呈现的页面上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50426137/