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 templatetagを使用して、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 に答える