今天在学习Django项目时,使用Djangorestframework出现了以下错误:
问题原因
由于user的model的name参数可以为空导致的
class UserProfile(AbstractUser):
"""
用户
"""
name = models.CharField(max_length=30, null=True, blank=True, verbose_name="姓名")
class Meta:
verbose_name = "用户"
verbose_name_plural = "用户" #复数时
def __str__(self):
return self.name
解决方式
- 我出现这个错误的时候登录了
xadmin的管理员账号,只要把账户登出就能快速解决。 - 为防止以后出现错误,最佳解决方式是直接修改
__str__的返回值。
def __str__(self):
if self.name:
return self.name
else:
return self.username # 父类AbstractUser原本的属性