管理界面中的 Django auth.User:强制转换为 Unicode:需要字符串或缓冲区,找到用户
Posted
技术标签:
【中文标题】管理界面中的 Django auth.User:强制转换为 Unicode:需要字符串或缓冲区,找到用户【英文标题】:Django auth.User in Admininterface: coercing to Unicode: need string or buffer, User found 【发布时间】:2011-11-15 23:45:51 【问题描述】:我对 django 还是很陌生。我尝试使用 auth.User 对象作为外键。
我的模特:
from django.contrib.auth.models import User
(...)
class Entry(models.Model):
(...)
user = models.ForeignKey(User)
date = models.DateTimeField()
def __unicode__(self):
return self.user
在管理界面中使用用户创建新条目时,我得到:"coercing to Unicode: need string or buffer, User found"
异常类型:TypeError
异常值:强制转换为 Unicode:需要字符串或缓冲区,用户 找到了
例外 位置:/Library/Python/2.7/site-packages/django/utils/encoding.py 在 force_unicode 中,第 71 行
我错过了什么?
【问题讨论】:
【参考方案1】:这应该可以工作并解释自己
def __unicode__(self):
return unicode(self.user)
【讨论】:
正是我需要的。 +1以上是关于管理界面中的 Django auth.User:强制转换为 Unicode:需要字符串或缓冲区,找到用户的主要内容,如果未能解决你的问题,请参考以下文章
Django-组件--用户认证Auth(auth_user增加字段)
Django:为啥要为 UserProfile 创建 OneToOne 而不是子类化 auth.User?
Django 无法使用 rest-auth/user/ 获取当前用户