gpt4 book ai didi

django - 为什么 pgettext_lazy 会破坏我的模板,而 ugettext_lazy 不会?

转载 作者:行者123 更新时间:2023-12-02 04:34:01 27 4
gpt4 key购买 nike

当我在模型的 help_text 上使用 pgettext_lazy 时,我的模板失败。它与 ugettext_lazy 一起工作得很好。

错误

Caught TypeError while rendering: Lazy object returned unexpected type.

型号

class BalanceIncreaseOrder(models.Model):
amount = models.FloatField(help_text=pgettext_lazy("Translators: please localize this to reflect the correct currency", "Note: amount will be billed in United States dollars (USD)"))

表格

class BalanceIncreaseOrderForm(ModelFormRequired):
class Meta:
model = BalanceIncreaseOrder
fields = ("amount",)

模板

{% for field in form %}
{{ field }}
{% endfor %}

我在每种方式设置帮助文本后就调试了模型。两次都会打印出来

<django.utils.functional.__proxy__ object at 0x10fcb3a50>

pgettext_lazy 是否有错误?有什么想法吗?

最佳答案

我也遇到了同样的问题。我用过

unicode(pgettext_lazy('context', 'string'))

这将消除错误,但现在 manage.py makemessages 不会选取已翻译的行。

也许这会对你有所帮助..

编辑:

啊,我找到了解决方案:

pgettext_lazy(u'context', u'string')

这样就可以完成任务。

关于django - 为什么 pgettext_lazy 会破坏我的模板,而 ugettext_lazy 不会?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10148303/

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