Django:blocktrans 条目未被翻译
Django: blocktrans entry is not being translated
我的 HTML
中有这个块
...
<a class="header" href="{% url 'listing' house_post.id %}">
{% blocktrans with house_type=house_post.house_type.name trimmed %}
{{house_type}}
{% endblocktrans %}
</a>
...
house_type 的一个值为 "Condominium"。我在我的 .po 文件中添加了以下条目。
msgid "Condominium"
msgstr "ኮንዶሚኒየም"
我在 po 文件上 运行 compilemessages,当我切换语言时,其余的翻译工作。我已确保 house_type 的值设置为 "Condominium"。但由于某种原因,它没有被翻译。
此外,当我 运行 makemessages 时,该工具会注释掉我在 .po 文件中添加的内容。我在 运行ning compilemessages 之前取消注释它们。我不知道它为什么这样做,尽管它可能是一个线索。
可以将翻译文本添加到 .po 文件中。不是吗?
您的 blocktrans 的内容很可能是 {{house_type}}
的内容。不确定它来自哪里,但这是您必须翻译它的地方。不要忘记插入类似
的内容
from django.utils.translation import ugettext_lazy as _
到 header 的 py-files。
它没有被翻译,因为 {{house_type}}
将具有 house_post.house_type.name
的值。
blocktrans 实际上在您的代码中什么都不做。如果您想在句子中添加可翻译的文本,您将需要它。例如:
{% blocktrans with house_type=house_post.house_type.name trimmed %}
{{house_type}} Translate this part
{% endblocktrans %}
如果你想要翻译的变量,你必须将翻译传递给 house_post.house_type.name
。
我的 HTML
中有这个块...
<a class="header" href="{% url 'listing' house_post.id %}">
{% blocktrans with house_type=house_post.house_type.name trimmed %}
{{house_type}}
{% endblocktrans %}
</a>
...
house_type 的一个值为 "Condominium"。我在我的 .po 文件中添加了以下条目。
msgid "Condominium"
msgstr "ኮንዶሚኒየም"
我在 po 文件上 运行 compilemessages,当我切换语言时,其余的翻译工作。我已确保 house_type 的值设置为 "Condominium"。但由于某种原因,它没有被翻译。
此外,当我 运行 makemessages 时,该工具会注释掉我在 .po 文件中添加的内容。我在 运行ning compilemessages 之前取消注释它们。我不知道它为什么这样做,尽管它可能是一个线索。
可以将翻译文本添加到 .po 文件中。不是吗?
您的 blocktrans 的内容很可能是 {{house_type}}
的内容。不确定它来自哪里,但这是您必须翻译它的地方。不要忘记插入类似
from django.utils.translation import ugettext_lazy as _
到 header 的 py-files。
它没有被翻译,因为 {{house_type}}
将具有 house_post.house_type.name
的值。
blocktrans 实际上在您的代码中什么都不做。如果您想在句子中添加可翻译的文本,您将需要它。例如:
{% blocktrans with house_type=house_post.house_type.name trimmed %}
{{house_type}} Translate this part
{% endblocktrans %}
如果你想要翻译的变量,你必须将翻译传递给 house_post.house_type.name
。