我才刚刚开始使用Django国际化,并试图了解使用{% blocktrans %}
的最佳实践。最好为每个段落使用一个{% blocktrans %}
,还是应该有一个包含很多段落的大{% blocktrans %}
?
拥有一个较大的{% blocktrans %}
会更快,并使我的模板看起来更整洁,但我担心的是:
<p>...</p>
)成为翻译字符串msgid
将会更改,这似乎可能会影响其他段落。如果我的块较小,那么更改将更加孤立(我想)。 msgid
。 我也想知道格式化。在
{% blocktrans %}
内部换行是否有任何麻烦?还是有领导空间?例如。:{% blocktrans %}
You have {{ num_messages }} messages.
Another sentence.
{% blocktrans %}
欢迎任何建议。
最佳答案
出于各种原因,多个小的{% blocktrans %}
块是有益的:
您也可以这样思考:可翻译字符串中的标记越少,翻译人员(可能有或没有技术背景)出错的机会就越少。
因此,请回答您的问题:每个段落都使用blocktrans标记是更好的选择。如果您最终更改了一个段落,那么只有那个段落需要翻译人员再次检查。
关于空格和换行符:默认情况下,它们将以PO转换文件结尾。在Django 1.7中,blocktrans将具有
trimmed
选项,该选项可删除空格和换行符(source):关于python - Django i18n : recommended size and formatting for {% blocktrans %} blocks?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20150773/