Django-tables2 набор столбцов

Как определить django-tables2, какие столбцы я хотел бы иметь в таблице? Я знаю, что это атрибут столбца "visible", который может быть установлен на False. Однако у меня есть модель со многими полями и хотелось бы отобразить только некоторые из них, поэтому, составив полный список всех столбцов, просто чтобы сказать, что большинство из них не будут видны, не кажется правильным.

То, что я ищу, - это способ предоставить список имен столбцов, которые будут отображаться, если это возможно, возможно, даже дать пользователю возможность выбирать, какие столбцы он хочет.

Другое решение пришло мне в голову - сделайте этот атрибут "visible" False по умолчанию, но поскольку он определен в классе Column, мне все равно нужно будет написать полный список.

Так как я не нашел дискуссионный форум django-tables2, я спрашиваю здесь.

Ответы

Ответ 1

Пример указания полей модели

Ваша модель

class Product(model.Models):
    name = model.CharField(max_length=20)
    price = model.DecimalField(max_digit=9, decimal_places=2)

Таблица

class ProductTable(tables.Table):
    actions = ProductActions(orderable=False) # custom tables.Column()
    class Meta:
        model = Product
        fields = ('name', 'price', 'action') # fields to display

Также вы также можете использовать exclude

Связанная запись документации здесь