Я пытался переопределить метод __unicode__()
по умолчанию для пользовательской модели django.contrib.auth.models, но я не могу заставить его работать.
Я попробовал это так:
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"
но это не работает, я знаю, что это неправильно, но я понятия не имею, как это сделать правильно.
Все, что я хочу, это сказать «пирог» вместо имени пользователя в панели администратора.
редактирование:
Удалось сделать это так:
class MyUser(User):
class Meta:
proxy = True
def __unicode__(self):
if self.get_full_name() == '':
return "pie"
else:
return self.get_full_name()
Я использовал класс MyUser при создании ссылок на ForeignKey вместо User.