小编Fab*_*Fab的帖子

带有变量的 Django blocktrans

我有一个模板,我想在其中翻译一个字符串。

{% blocktrans with "www.mywebsite.com" as website_name %}footer-slogan{{ website_name }}{% endblocktrans %}
Run Code Online (Sandbox Code Playgroud)

我已经生成了 po 文件,其中我将字符串翻译如下:

msgid "footer-slogan %(website_name)s"
msgstr "This is a test %(website_name)s"
Run Code Online (Sandbox Code Playgroud)

在我生成的 html 文件中,我得到了这个未翻译的元素:

footer-slogan www.mywebsite.com
Run Code Online (Sandbox Code Playgroud)

如果我从翻译后的字符串中删除变量,它就会起作用:

msgid "footer-slogan %(website_name)s"
msgstr "This is a test"
Run Code Online (Sandbox Code Playgroud)

我什至尝试从源翻译中删除变量,但将变量保留在翻译后的字符串中,问题是相同的:

template.html
{% blocktrans with "www.mywebsite.com" as website_name %}footer-slogan{% endblocktrans %}

django.po
msgid "footer-slogan"
msgstr "This is a test %(website_name)s"
Run Code Online (Sandbox Code Playgroud)

我希望能够仅在翻译后的字符串上设置变量。

我在翻译后的字符串上做错了什么?

django internationalization po django-i18n

6
推荐指数
1
解决办法
3155
查看次数

标签 统计

django ×1

django-i18n ×1

internationalization ×1

po ×1