11

我想将 blocktrans 块的输出分配给模板变量。

您可以使用 trans 标签来做到这一点,如下所示:

{% trans "Some text to translate" as foo %}

但是你不能对 blocktrans 标签做同样的事情。我在文档中看不到您可以执行此操作。

4

2 回答 2

11

Django 1.9 添加了一个asvar组件到blocktrans. 文档中的一个示例

{% blocktrans asvar the_title %}The title is {{ title }}.{% endblocktrans %}
<title>{{ the_title }}</title>
<meta name="description" content="{{ the_title }}">

不幸的是,在添加之前,您似乎需要其他一些方法。

于 2016-02-12T16:55:01.777 回答
5

使用 blocktrans 标签是不可能的。

但是,您可以使用此captureas 模板标签来捕获 blocktrans 的输出。

{% captureas trans_value %}
    {% blocktrans %}
        This has some stuff in it which will be translated {{ foo }}.
    {% endblocktrans %}
{% endcaptureas %}

{{ trans_value }}
于 2013-02-25T19:46:16.330 回答