django slugify 出错
Posted
技术标签:
【中文标题】django slugify 出错【英文标题】:getting error with django slugify 【发布时间】:2013-07-28 18:27:39 【问题描述】:我正在尝试这个
from django.utils.text import slugify
In [8]: mystr = "This is john"
In [9]: slugify(mystr)
我收到了这个错误
TypeError: must be unicode, not str
如果我用这个
from django.template.defaultfilters import slugify
然后它可以工作,但它不会将underscores
更改为hyphens
,如果我有dots
,它会简单地删除它
【问题讨论】:
【参考方案1】:这是因为 slugify()
需要一个 unicode 对象。
解决它的最简单方法是将字符串作为 unicode 对象传递
mystr = u'This is John'
或
mystr = unicode('This is John')
>> u'This is John'
【讨论】:
对于未来的搜索者...此答案仅与 Python 2 相关。Python 3 中没有 unicode() ,Python 3 中的所有字符串都是 Unicode。以上是关于django slugify 出错的主要内容,如果未能解决你的问题,请参考以下文章