Define __unicode__ on models instead of __str__.
authorMatthijs Kooijman <matthijs@stdio.flexvps.nl>
Thu, 27 Nov 2008 22:09:05 +0000 (23:09 +0100)
committerMatthijs Kooijman <matthijs@stdin.nl>
Sat, 10 Jan 2009 12:01:21 +0000 (13:01 +0100)
When the result of __str__ is a unicode object containing non-ascii characters,
str(instance) barfs with an encoding error.

influences/models.py

index ecee87a37a61e7f8d3213a94bd45d46e1b1b322e..f9fc526352da7948987ae39b0739ad613dbacf5c 100644 (file)
@@ -18,7 +18,7 @@ class Character(models.Model):
     status      = models.CharField(max_length=2, choices=STATUS_CHOICES, default='N', verbose_name = _("Status"))
     player      = models.ForeignKey(User, verbose_name = _("Player"))
 
-    def __str__(self):
+    def __unicode__(self):
         return self.name
 
     def get_absolute_url(self):
@@ -48,7 +48,7 @@ class Influence(models.Model):
 
     result      = models.TextField(blank=True,verbose_name = _("Result"))
 
-    def __str__(self):
+    def __unicode__(self):
         return self.summary
 
     def get_absolute_url(self):