关于python:在Django模板中使用带有blocktrans的urlize过滤器的惯用方式

Idiomatic way to use urlize filter with blocktrans in Django template

我最近发现了一个巧妙的技巧,可以避免不必要的标记污染 Django 的 gettext 翻译文件。如果您想让电子邮件地址可点击,您可以在 trans 字符串参数后使用 urlize 过滤器,如下所示:

1
{% trans"Contact us at [email protected]"|urlize %}

有没有什么方法可以对 blocktrans 标签的结果应用相同的技巧?


有一个 filter 块标签可以让你对块的内容应用一个或多个过滤器,所以你可以像这样使用它:

1
2
3
{% filter urlize %}
  {% blocktrans %}Contact us at at foo@bar.com{% endblocktrans %}
{% endfilter %}

参见 Django 文档。