在django-tables2中是否可以在Table的构造函数中为TemplateColumn设置template_name?我希望能够在运行时选择模板。
从文档中设置模板的唯一方法是这样的:
class ExampleTable(tables.Table):
foo = tables.TemplateColumn('{{ record.bar }}')
# contents of `myapp/bar_column.html` is `{{ value }}`
bar = tables.TemplateColumn(template_name='myapp/name2_column.html')
在我的应用程序中,根据应用程序的状态,一列有不同的模板,我希望避免为每个状态创建不同的Table类,而只是在运行时交换模板。
答案 0 :(得分:1)
您可以尝试以这种方式在运行时更改模板:
e = ExampleTable( your_query )
e.columns['bar'].column.template_name = 'your_template'
免责声明:未经测试。请测试一下然后回来。如果不跑,我会删除答案。