空字符串的翻译显示po标题

时间:2013-08-27 07:23:23

标签: python django gettext po django-i18n

当我尝试在django模板中翻译空字符串时,我最终会显示po标题而不是空字符串http://codex.wordpress.org/Translating_WordPress#The_PO_File_Header。 我必须翻译空字符串,因为它们在db中我无法填充所有模型并将它们翻译为动态。 现在我使用像

这样的东西
{% if data %}
    {% trans data %}
{% endif %}

我试图将标题标记为模糊,但它不起作用。

有没有办法避免检查每个可翻译的字符串并避免po标题出现? 我正在使用django 1.5。

1 个答案:

答案 0 :(得分:0)

好的,根据Why does gettext translate an empty string to the .po header text?发现了发生的事情 和http://www.gnu.org/software/gettext/manual/gettext.html#MO-Files

  

将原始字符串排序后,可以使用简单的二进制文件   搜索,当MO文件不包含散列表时,或用于   当使用MO中提供的散列表不可行时   文件。这也有另一个优点,如PO中的空字符串   文件GNU gettext通常被翻译成一些系统信息   附加到该特定MO文件,并且必须是空字符串   成为原始表和翻译表中的第一个   系统信息很容易找到。

所以我无法避免检查字符串。