Python Django naturaltime()添加奇怪的字符
对于Django 1.8.2,当我在时间戳上使用naturaltime进行某些准备时,结果如下:Python Django naturaltime()添加奇怪的字符,python,django,unicode,encoding,Python,Django,Unicode,Encoding,对于Django 1.8.2,当我在时间戳上使用naturaltime进行某些准备时,结果如下: from django.contrib.humanize.templatetags.humanize import naturaltime naturaltime(datetime.datetime(2015, 6, 16, 19, 37, 38, 338598)) '2\xa0days ago' 如果我降级到较早的Django(例如1.6.2),结果就是我想要的: '2 days ago'
from django.contrib.humanize.templatetags.humanize import naturaltime
naturaltime(datetime.datetime(2015, 6, 16, 19, 37, 38, 338598))
'2\xa0days ago'
如果我降级到较早的Django(例如1.6.2),结果就是我想要的:
'2 days ago'
有人知道为什么会这样吗?尽管我无法正确解释为什么1.6.2会失败,因为它似乎也适用于。基本上,它是模板标记过滤器,
\xa0实际上是拉丁语中的不间断空格(ISO 8859-1),也是chr(160)。
(
)。如果要在代码中使用,请尝试:string。替换(u'\xa0',u'')
或使用ascii对其进行解码。1.6.2没有失败,1.8是。我宁愿从源头上解决这个问题,而不是在出局的路上进行肮脏的替换,这是一个拼写错误,“我没有正确解释为什么1.6.2会通过”,因为根据提交的历史,它也应该得到关于“非破坏性”的修复,并供您参考,认为这是一个肮脏的解决方法,我想这不是代码的问题,他们已经给出了一个解决方案,它将为您提供\xa0
。正确阅读发行票