2

Django の翻訳システムを正常にインストールしましたが、設計上の欠陥と思われる問題が発生しました (間違っていることを願っています)。

そのような翻訳ブロックを簡単に作成できます

<p>{% trans "The rain in Spain falls mainly on the plain" %}</p>

しかし場合によっては、文の一部だけをリンクにしたり、書式を変えたりしたいことがあります。

<p>The rain in <a href="...">Spain</a> falls <strong>mainly</strong> on the plain</p>

これらのタグ内に翻訳ブロックを作成するだけでよいことに気づきました

<p>
  {% trans "The rain in " %}
  <a href="...">{% trans "Spain" %}</a>
  {% trans " falls mainly " %}
  <strong>{% trans "on the plain" %}</strong>
</p>

しかし、これは翻訳者を苛立たせるだけでなく、ターゲット言語によって保証されていない語順を強制します。

https://github.com/mbi/django-rosettaのようなより堅牢な翻訳ソリューションを見てきましたが 、この使用法を説明するドキュメントには何も表示されません。ここで使用できる HTML トリックはありますか?

4

1 に答える 1

4

使用blocktrans:

<p>
  {% blocktrans %}
  The rain in <a href="...">Spain</a>
  falls mainly <strong>on the plain</strong>
  {% endblocktrans %}
</p>

transこれは、ほとんど標準テキストでしか使用できないsimple よりも複雑なコンテンツを許可します。タグ内ではurlルックアップがサポートされていないため、この回答に示されているように、を入力する前に URL を変数に保存する必要があることに注意してください。blocktransblocktrans

于 2012-12-31T18:07:35.983 に答える