如何在Django翻译中保留内联链接?

2024-03-28 21:13:38 发布

您现在位置:Python中文网/ 问答频道 /正文

我已经成功安装了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技巧可以用吗?你知道吗


Tags: thedjangointranson系统情况strong
1条回答
网友
1楼 · 发布于 2024-03-28 21:13:38

使用^{}

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

它允许比简单的trans更复杂的内容,后者通常只能与标准文本一起使用。请注意,reverse ^{} lookups are not supported位于blocktrans标记中,因此在输入blocktransas shown in this answer之前,必须将url保存到变量中。你知道吗

相关问题 更多 >