问题描述
我不小心在我的models.py文件中放了两个def __unicode__(self):
方法的制表符缩进。
即对于两个模型,我做了以下工作:
class Notification(models.model):
recipient = models.OneToOneField(User)
timestamp = models.DateTimeField()
def __unicode__(self):
return "%s recieved a notification" % self.recipient
def
语句与该类处于同一级别, return
语句的缩进方式就好像方法头已正确缩进一样。
我将其更正并投入生产(带有Heroku的Postgres安装)。 如果我在本地(在SQLite上)访问管理面板,则这些数据模型现在可以正确填充。 但是,如果我尝试访问实时应用程序的管理面板,则会收到500响应,并且通过NewRelic,我发现:
异常:UnicodeDecodeError /django.contrib.admin.options:changelist_view异常:UnicodeDecodeError:'ascii'编解码器无法解码位置68的字节0xc3:序数不在范围内(128)
我研究了类似的问题,但问题似乎不适用于我的情况。
什么是django.contrib.admin.options:changelist_view
,试图告诉我的错误究竟是什么。
我需要帮助解决这些家伙。
ps这与使用Django 1.5和Python 2.7的旧项目有关
1楼
您应该返回的是Unicode对象而不是字符串对象。
假设self.recepient
已经是Unicode,请执行以下操作:
return u"%s recieved a notification" % self.recipient
注意你