如何使django-tables2将所有列标题呈现为文本而不是链接

arn*_*ore 0 html python django django-tables2

在django-tables2中,默认情况下,所有表列都支持排序.这意味着所有列标题都呈现为链接,允许用户调整表数据的顺序.但我不希望列标题呈现为链接,如何做到这一点?

这是文件!

默认情况下,所有表列都支持排序.这意味着所有列标题都呈现为链接,允许用户调整表数据的顺序.

可以基于表或列禁用排序.

Table.Meta.orderable = False – default to disable ordering on columns
Column(orderable=False) – disable ordering for specific column
Run Code Online (Sandbox Code Playgroud)

例如禁用除一个以外的所有列:

class SimpleTable(tables.Table):
    name = tables.Column()
    rating = tables.Column(orderable=True)

    class Meta:
        orderable = False
Run Code Online (Sandbox Code Playgroud)

我这样做,但它不起作用.这是我的talbes.py文件:

class MusicBaseTable(tables.Table):
    songs = tables.CheckBoxColumn()
    title = tables.Column()
    artist = tables.Column()
    album = tables.Column()
    genre = tables.Column()
    date = tables.Column()

    class Meta:
        orderable = False
        attrs = {"class": "list"}
Run Code Online (Sandbox Code Playgroud)

jpi*_*pic 8

它在文档中:

禁用特定列的排序

默认情况下,所有表列都支持排序.这意味着所有列标题都呈现为链接,允许用户调整表数据的顺序.

可以基于表或列禁用排序.

  • Table.Meta.orderable = False - 默认禁用列上的排序
  • 列(orderable = False) - 禁用特定列的排序,例如禁用除一个列之外的所有列:

查看模板如何确定列是否应具有订单链接:{% if column.orderable %}