tags:

views:

27

answers:

1

Greetings

I want to slugify/normalize utf8 string however I get

# -*- coding: utf-8 -*-   
from django.template.defaultfilters import slugify
print slugify( unicode("şşşşüüüüççç") )

and get result as "ssssuuuccc", however I get UnicodeDecodeError 'ascii' codec cant decode ... error.

+1  A: 

unicode() without an encoding argument tries to use ASCII to decode the given byte string, as a fail-safe default. unicode("şşşşüüüüççç") can't work as the string is not ASCII.

Use a unicode string literal:

print slugify(u"şşşşüüüüççç")

(and of course ensure that your text editor saves the script file using the UTF-8 encoding.)

bobince