我成功地设法让 trans 和 blocktrans 翻译文本。
然而...
我在 utils.py 中定义了一个函数,它返回一个字典,其中包含我需要将其中一些字符串转换为当前语言的字符串。编辑:*这是我在项目目录中创建的 utils.py,视图调用它以在 dict 上执行某些辅助功能,然后返回更新后的 dict
我做了这样的事情:
try:
path = default_storage.save(customercode + '/' + file.name, ContentFile(file.read()))
results['status'] = 'success'
results['message'] = _(u'Your file has been successfully uploaded')
except Exception as e:
results['status'] = 'error'
results['message'] = _(u'There was an error uploading your file: ') + str(e)
return results
我还添加了from django.utils.translation import ugettext_lazy as _ to the top of this utils.py file..
并且这个“结果”字典用于我的一个视图中,其中整个字典经过进一步处理后作为上下文变量传递给模板。
我已经在 .po 文件中正确设置了翻译。所有其他模板标签都可以完美翻译。只有上面提到的字符串不翻译。
任何帮助将不胜感激。
更新:我在表单提交标签中尝试了相同的过程,它翻译得很好。只有上述区域不会翻译!
PS:这是我关于stackoverflow的第一个问题。如果我在问这个问题时犯了错误,我会提前道歉。