在 flask 中使用 url_for 中的变量作为参数名称

Use variable in url_for in flask for parameter name

我的 flask 宏文件中有这段代码。

{% macro display_name(name, parameter, parameter_value) %}
<a href="{{ url_for('users_stats',parameter = parameter_value) }}">{{name}}</a>

{% endmacro %}

我无法将参数值设置为我在函数中传递的值。它以纯文本形式出现,如何解决这个问题?

这就是我调用函数的方式。

  {{ display_name("Rahul", 'age', 15) }}

尝试 kwargs dict 解包。我建议稍后研究更多信息。

{% macro display_name(name, parameter, parameter_value) %}
<a href="{{ url_for('users_stats', **{parameter: parameter_value}) }}">{{name}}</a>

{% endmacro %}

重点是创建 dict 其中键是参数的名称,值是相应参数的值。然后通过 ** 运算符解压这个字典,将这些参数和值传递给函数。