Я думаю, вы можете попробовать так:
Первое переопределение * Метод визуализации TemplateColumn
:
class CustomTemplateColumn(tables.TemplateColumn):
def render(self, record, table, value, bound_column, **kwargs):
if record.grade == "G2":
return ''
return super(CustomTemplateColumn, self).render(record, table, value, bound_column, **kwargs)
Затем используйте его в классе Table
:
class PersonTable(tables.Table):
T1 = '<button type="button" class="btn js-update" update-link="{{ record.get_absolute_url_update }}">update</button>'
T2 = '<button type="button" class="btn js-delete" delete-link="{{ record.get_absolute_url_delete }}">delete</button>'
edit = CustomTemplateColumn(T1)
delete = CustomTemplateColumn(T2)
class Meta:
model = Person
fields = ('name','surname','city','grade',)
template_name = 'django_tables2/bootstrap4.html'