Reputation: 137
I am trying this
from django.utils.text import slugify
In [8]: mystr = "This is john"
In [9]: slugify(mystr)
and i am getting this error
TypeError: must be unicode, not str
if i use this
from django.template.defaultfilters import slugify
then it works but it does not chnage underscores
to hyphens
and if i have dots
it simple removes it
Upvotes: 5
Views: 2208
Reputation: 47172
This is because slugify()
expects a unicode object.
The easiest way to solve it is passing the string as a unicode object
mystr = u'This is John'
or
mystr = unicode('This is John')
>> u'This is John'
Upvotes: 5