重写默认用户模型方法
我一直在尝试重写django.contrib.auth.models中用户模型的默认__unicode__()
方法,但一直没能成功。
我试过这样做:
from django.db import models
from django.contrib.auth.models import User
class User(models.Model):
def __unicode__(self):
return "pie"
还有这样:
from django.db import models
from django.contrib.auth.models import User
class User(User):
def __unicode__(self):
return "pie"
但都不行,我知道这样做是错的,但我不知道该怎么正确地做。
我只想在管理面板里显示“pie”而不是用户名。
编辑:
我终于这样做成功了:
class MyUser(User):
class Meta:
proxy = True
def __unicode__(self):
if self.get_full_name() == '':
return "pie"
else:
return self.get_full_name()
在创建外键引用时,我用了MyUser类,而不是User。