Представление Django для извлечения данных из модели возвращает только имя объекта - PullRequest
1 голос
/ 16 августа 2010

У меня есть модель с данными, определенными так:

class SyncJob(models.Model):
  date = models.DateTimeField()
  user = models.ForeignKey(User, unique=False)
  source = models.CharField(max_length=3, choices=FS_CHOICES)
  destination = models.CharField(max_length=3, choices=FS_CHOICES)
  options = models.CharField(max_length=10, choices=OPTIONS)

  def _unicode_(self):
    return u'%s %s %s' % (self.date, self.source, self.destination)

И у меня есть представление для получения данных:

def retrieve(request):
  sync = SyncJob.objects.get(id=02)
  return render_to_response('base.html', {'sync': sync})

Но при рендеринге страницы я получаю только: объект SyncJob Вместо того, чтобы получать дату, источник и информацию о месте назначения. Как я могу сделать так, чтобы я получил эти данные?

1 Ответ

2 голосов
/ 17 августа 2010

Смотрите названия специальных методов:

def _unicode_(self):
    ...

должно быть:

def __unicode__(self):
    ...

Специальные методы Python имеют два подчеркивания на каждом конце имени.

...