В django-table2 добавить столбец из связанной таблицы
Я пытаюсь добавить в таблицу table1 построенную на django table2, поле из другой таблицы, к примеру, field2. Подскажите, пожалуйста, как это сделать? Ниже приведенный код дает результат для поля field2 = None
Models.py
class table1(models.Model):
field1 = models.AutoField(primary_key=True,)
class table2(models.Model):
field2 = models.AutoField(primary_key=True,)
field3 = models.ManyToManyFieldt(table1, related_name='related_table')
Tables.py
class table1Table(table2, tables.Table):
class Meta:
model = table1
attrs = {"class": "table table-hover table-bordered"}
sequence = ('field2', 'field1',)
Ответы (1 шт):
Автор решения: Denis
→ Ссылка
Необходимо было использовать метод render_foo с атрибутом record, для доступа к значению поля.
Tables.py
class table1Table(table2, tables.Table):
class Meta:
model = table1
attrs = {"class": "table table-hover table-bordered"}
sequence = ('field1', 'field2')
def render_field2(self, value, record):
field1 = record.field1
data = table2.objects.get(field3__field1=field1).field2
return data