我正在尝试这个

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,则将其简单删除

最佳答案

这是因为slugify()需要一个unicode对象。

解决它的最简单方法是将字符串作为unicode对象传递

mystr = u'This is John'

或者
mystr = unicode('This is John')
>> u'This is John'

10-07 12:20