从视图中的 for 循环分配 Jinja2 块变量

Assign Jinja2 block variable from for loop in view

在我看来,如何用 for 循环中的 snippet['language'] 替换硬编码的“python”?

{% highlight 'python', lineno='inline' -%}
    {{snippet['code']}}
{% endhighlight %}

您可以像这样简单地将变量放在硬编码字符串的位置:

{% set lang = 'python' %}
{% highlight lang %}
  from fridge import Beer
  glass = Beer(lt=500)
  glass.drink()
{% endhighlight %}

您还没有向我们展示您的 for 循环,但原则上您也可以在 for 循环中做同样的事情:

{% for lang in ['python', 'ruby', 'scheme'] %}
  {% highlight lang %}
  from fridge import Beer
  {% endhighlight %}
{% endfor %}