16

如何告诉 django-tables2 我想在表中包含哪些列?我知道有这个Column 属性“可见”,可以设置为 False。但是我有一个包含许多字段的模型,并且想只显示其中的一些,因此编写所有列的完整列表,只是为了告诉它们中的大多数将不可见,这似乎不是正确的方法。

我正在寻找的是一种提供要显示的列名列表的方法,如果这是可能的,那么甚至可能让用户能够选择他想要的列。

我想到了另一个解决方案 - 默认情况下将“可见”属性设为 False,但由于它是在 Column 类中定义的,所以我仍然需要编写一个完整的列表。

由于我还没有找到任何 django-tables2 讨论论坛,所以我在这里问。

4

1 回答 1

25

指定模型字段的示例

你的模型

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

相关文档条目在这里

于 2012-08-13T09:51:12.207 回答