Flask-获取点击的链接信息并将其传递回python文件

时间:2019-11-15 05:22:49

标签: python html flask hyperlink jinja2

我在堆栈溢出问题上发现了this个问题,该问题与我正在寻找的解决方案有所不同。但是,我试图在这样的for循环中运行此代码:

{% for x in listOfCategories %}
   <h2><li><a href="{{url_for('links', type='{{x}}')}}">{{x}}</a></li>
{% endfor %}

然后在应用程序中:

@app.route('/links', methods=['GET', 'POST'])
def links():
    category = request.args.get('type')

问题在于type='{{x}}'在引号内,因此从字面上将其呈现为{{x}},而不是实际的变量内容。有没有一种方法可以将引号转义以将类型分配给x变量中的内容?

1 个答案:

答案 0 :(得分:0)

您想使用{{url_for('links', type=x)}}",因为双括号之间的所有内容都被解释为可执行代码-将其包含在另一个字符串中将得到与您看到的完全一样的内容。

因此,模板应该是

{% for x in listOfCategories %}
   <h2><li><a href="{{ url_for('links', type=x) }}">{{x}}</a></li>
{% endfor %}