gpt4 book ai didi

django - 运行 `django-admin makemessages` 时如何忽略 Django 的 .po 文件中已翻译的字符串

转载 作者:行者123 更新时间:2023-12-01 13:33:39 30 4
gpt4 key购买 nike

我的 Django 应用程序使用了一些已经在 Django 中翻译的字符串。在密码重置过程的自定义模板中,我想使用一些原始文本,例如 this one prompting user to log in完成重置过程后。

自定义模板包含 <p>{% trans "Your password has been set. You may go ahead and log in now." %}</p>直接取自 original form file .

运行后django-admin makemessages我的 .po 文件包含以下内容:

#: core/templates/auth/password-reset-complete.html:10
msgid "Your password has been set. You may go ahead and log in now."
msgstr ""

翻译工作正常,呈现的页面已包含正确的翻译字符串。 是否可以自动忽略 .po 文件中的这个空翻译? 简单地删除它只会在我运行 makemessages 之前有效再次。它已经被翻译了,在我的 .po 文件中复制它似乎没有必要。

最佳答案

您可以尝试将字符串放入变量中,然后再将其提供给 trans ,所以 makemessages没注意到。就像是

{% with mystr="Your password has been set.  You may go ahead and log in now." %}
{% trans mystr %}
{% endwith %}

或者,您可以创建自己的自定义模板标签,只需调用 gettext (来自 django.utils.translation ),并使用它代替 trans .

关于django - 运行 `django-admin makemessages` 时如何忽略 Django 的 .po 文件中已翻译的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44652801/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com