python - Problema al almacenar el carácter Unicode en MySQL con Django

Tengo la cuerda

 u"Played Mirror's Edge\u2122"

Que se debe mostrar como

 Played Mirror's Edge™

Pero ese es otro tema. Mi problema actual es que lo estoy poniendo en un modelo y luego trato de guardarlo en una base de datos. AKA:

a = models.Achievement(name=u"Played Mirror's Edge\u2122")
a.save()

Y estoy recibiendo:

'ascii' codec can't encode character u'\u2122' in position 13: ordinal not in range(128)

traza de pila completa (según lo solicitado):

Traceback:
File "/var/home/ptarjan/django/mysite/django/core/handlers/base.py" in get_response
  86.                 response = callback(request, *callback_args, **callback_kwargs)
File "/var/home/ptarjan/django/mysite/yourock/views/alias.py" in import_all
  161.     types.import_all(type, alias)
File "/var/home/ptarjan/django/mysite/yourock/types/types.py" in import_all
  52.     return modules[type].import_all(siteAlias, alias)
File "/var/home/ptarjan/django/mysite/yourock/types/xbox.py" in import_all
  117.             achiever = self.add_achievement(dict, siteAlias, alias)
File "/var/home/ptarjan/django/mysite/yourock/types/base_profile.py" in add_achievement
  130.                 owner       = siteAlias,
File "/var/home/ptarjan/django/mysite/django/db/models/query.py" in get
  304.         num = len(clone)
File "/var/home/ptarjan/django/mysite/django/db/models/query.py" in __len__
  160.                 self._result_cache = list(self.iterator())
File "/var/home/ptarjan/django/mysite/django/db/models/query.py" in iterator
  275.         for row in self.query.results_iter():
File "/var/home/ptarjan/django/mysite/django/db/models/sql/query.py" in results_iter
  206.         for rows in self.execute_sql(MULTI):
File "/var/home/ptarjan/django/mysite/django/db/models/sql/query.py" in execute_sql
  1734.         cursor.execute(sql, params)
File "/var/home/ptarjan/django/mysite/django/db/backends/util.py" in execute
  19.             return self.cursor.execute(sql, params)
File "/var/home/ptarjan/django/mysite/django/db/backends/mysql/base.py" in execute
  83.             return self.cursor.execute(query, args)
File "/usr/lib/pymodules/python2.5/MySQLdb/cursors.py" in execute
  151.             query = query % db.literal(args)
File "/usr/lib/pymodules/python2.5/MySQLdb/connections.py" in literal
  247.         return self.escape(o, self.encoders)
File "/usr/lib/pymodules/python2.5/MySQLdb/connections.py" in string_literal
  180.                 return db.string_literal(obj)

Exception Type: UnicodeEncodeError at /import/xbox:bob
Exception Value: 'ascii' codec can't encode character u'\u2122' in position 13: ordinal not in range(128)

Y la parte pertinente del modelo:

class Achievement(MyBaseModel):
    name = models.CharField(max_length=100, help_text="A human readable achievement name")

Estoy usando un backend MySQL con esto en mi configuración.py

DEFAULT_CHARSET = 'utf-8'

Básicamente, ¿cómo diablos debería lidiar con todas estas cosas de Unicode? Tenía la esperanza de que todo "simplemente funcionaría" si me mantuviera alejado de los conjuntos de personajes divertidos y me quedara con UTF8. Por desgracia, no parece ser tan fácil.

Respuestas a la pregunta(7)

Su respuesta a la pregunta