我将从列表中填充django-tables2
列表,我正在按照教程示例进行操作:
import django_tables2 as tables
data = [
{'name': 'Bradley'},
{'name': 'Stevie'},
]
class NameTable(tables.Table):
name = tables.Column()
table = NameTable(data)
我的问题是我不知道哪些字段是必需的,所以能够在运行时从名称列表中指定它们会很好。 。E.g,:
needed_columns = ["name"]
class NameTable(tables.Table):
for field in needed_columns:
ADD_FIELD(field, tables.Column())
这有可能吗?
答案 0 :(得分:0)
django-tables2' s Table
有一个构造函数参数extra_columns
:
extra_columns
(str
,列) - (名称,列) - 元组列表 包含要添加到实例的额外列。
您可以使用它在实例化表时动态添加列:
class MyTable(tables.Table):
name = tables.Column()
table = MyTable(data, extra_columns=[
('country', tables.Column())
])
您可以查看how that is implemented以查看如何向表类添加列。