Переопределение def __str__(self) в модели
Переопределение def __str__(self) или def __unicode__(self)
Переопределение производится не в файле модели, а в файле админки admin.py.
Пример переопределения на стандартном приложении django sites
from django.contrib.sites.models import Site
def site_unicode(self):
return '%s' % (self.name,)
Site.__str__ = site_unicode
- Импортировали модель
- Для удобства работы написали функцию, которая возвращает в данном случае только поле name
- Переопределили метод __str__ модели Site
Если используется только одно поле, можно упростить код до
from django.contrib.sites.models import Site
Site.__str__ = self.name