Заполните столбец таблицы django несколькими уровнями внешних ключей - PullRequest
0 голосов
/ 01 мая 2018

Мне нужно заполнить столбец моей таблицы свойством модели, отделенной от модели таблицы несколькими уровнями внешних ключей. Когда я пытаюсь получить доступ к свойству, я просто получаю тире для каждой строки вместо значения свойства.

из таблиц.py:

class AssignmentsTable(tables.Table):
    ...
    full_name = tables.Column(accessor='assignment.participant.full_name', verbose_name='First & Last Name (Participant)')
    ...

    class Meta:
        model = AssignmentDetail
        sequence = (..., "full_name", ...)

от models.py:

class AssignmentDetail(models.Model):
    assignment = models.ForeignKey(Assignment)
    ...

class Assignment(models.Model):
    ...
    participant = models.ForeignKey(Account, blank=True, null=True)

class Account(models.Model):
    first_name = models.CharField(max_length=50, blank=True, null=True)
    last_name = models.CharField(max_length=50, blank=True, null=True)
    ...
    @property
    def full_name(self):
        return '%s %s' % (self.first_name, self.last_name)

Это можно сделать с помощью таблиц django, и если да, то как?

1 Ответ

0 голосов
/ 02 мая 2018

Это должно работать так, как вы показали.

Я только что проверил в примере django-tables2: таблица , модели .

Screenshot of column spanning multiple relations

Я не уверен, что мешает вашему примеру нормально работать, хотя ...

...