我有一个字典的项目与多个属性。
from django.utils.translation import (
gettext_lazy as _,
)
{"item1": {
"labels": [
_("label1"),
"this is" + _("translatethis") + " label2",
]
然后将这些项目在DRF中进行序列化。
问题是
正在翻译_("label1")
但是"this is" + _("translatethis") + " label2"
未转换
我还尝试了字符串插值,fstring
和.format
,但没有任何效果。当串行化器获取labels
时,_("translatethis")
不是代理对象。
是在gettext_lazy
中围绕整个字符串工作的唯一方法吗?
1条答案
按热度按时间qyswt5oh1#
主要的问题是
_('translatethis')
不是字符串,而是在必要时承诺是字符串的东西,然而当你把它和字符串连接起来时,它就应该遵守它的承诺,这样它就呈现了一个字符串,并且在需要时,它不再能够检查活动语言。一个选项可能是使用惰性对象,例如: