wal*_*pat 0 encoding plone utf-8
目前似乎为了在门户消息中显示UTF-8字符,您需要先解码它们.
以下是我的代码中的代码段:
self.context.plone_utils.addPortalMessage(_(u'This document (%s) has already been uploaded.' % (doc_obj.Title().decode('utf-8'))))
Run Code Online (Sandbox Code Playgroud)
如果Plone中的标题已经是UTF-8编码,则字符串是unicode字符串,而下划线函数由i18ndude处理,我没有看到我们特别需要解码utf-8的原因.通常我忘记添加它并记住一旦我得到UnicodeError.
有什么想法吗?这是addPortalMessage的预期行为吗?导致问题的是i18ndude吗?
UTF-8表示Unicode,而不是Unicode,而不是Python unicode字符串.在Python中,我们通过编码/解码在Python的unicode字符串和unicode表示之间来回转换.
通过utf8string.decode('utf-8')解码UTF-8字符串会产生一个Python unicode字符串,该字符串可以与其他unicode字符串连接.
如果需要使用ASCII解码器,Python将自动将字符串转换为unicode.如果字符串中存在非ASCII字符,则会失败 - 例如,它以UTF-8编码.
| 归档时间: |
|
| 查看次数: |
84 次 |
| 最近记录: |