0

我成功地设法让 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的第一个问题。如果我在问这个问题时犯了错误,我会提前道歉。

4

1 回答 1

0

正如我所料,

我犯了一个非常愚蠢的错误。我在尝试打印翻译后的值时访问了模板中的错误变量!>_<

但我想我学到的一件事是远离问题,然后在很长一段时间后重新解决问题。你必须再次学习这个问题,这有时会帮助你找到像这些愚蠢的错误!

于 2012-06-12T21:58:59.493 回答