在我在金字塔应用程序中进行的测试中,我试图通过 JSON 发送可翻译的文本,但翻译不起作用。在文件的开头,我正在导入翻译字符串函数:
from pyramid.i18n import TranslationString as _
然后考虑以下代码:
@view_config(route_name='transtest', renderer='json')
def transtest_view(request):
return { 'myvar': _('temp-test', default='Temporary test', domain='myapp') }
但我得到的是:
{"myvar": "temp-test"}
请注意,如果我将渲染器更改为测试模板,我会执行以下操作:
@view_config(route_name='transtest', renderer='../templates/transtest.pt')
...
然后文本被正确翻译(请注意,我已经初始化了目录,更新了它们,编译了它们等)
这让我觉得 TranslationString 类在“json”渲染器中不能正常工作?如果是这样,我怎样才能通过 JSON 发送可翻译的字符串?
提前致谢