【问题标题】:django-tables2: Set template for TemplateColumn at runtimedjango-tables2:在运行时为 TemplateColumn 设置模板
【发布时间】:2014-02-20 10:33:47
【问题描述】:

django-tables2 中,是否可以在表的构造函数中为TemplateColumn 设置模板名称?我希望能够在运行时选择模板。

从文档中,设置模板的唯一方法是这样的:

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 类,而只是在运行时交换模板。

【问题讨论】:

    标签: django django-tables2


    【解决方案1】:

    你可以尝试用这种方式在运行时更改模板:

    e  = ExampleTable( your_query )
    e.columns['bar'].column.template_name = 'your_template'
    

    免责声明:未经测试。请测试一下,然后回来。如果不运行,我将删除答案。

    【讨论】:

    • 不错。答案是写挖table2代码;)强大的工具!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-31
    • 1970-01-01
    相关资源
    最近更新 更多