Python 如何在Django-tables2中按排序

Python 如何在Django-tables2中按排序,python,django,django-models,django-tables2,Python,Django,Django Models,Django Tables2,我已经在我的项目中实现了django-tables2。但我无法按其中一个字段(我在应用程序(模型)外部调用了该字段)排序。当我在GUI中单击“排序”按钮时,它没有按预期工作 代码如下: validation_time = tables.Column(accessor='model.history', verbose_name="Validation Time") 以下是调用该字段的代码: def render_validation_time(self, value): try:

我已经在我的项目中实现了django-tables2。但我无法按其中一个字段(我在应用程序(模型)外部调用了该字段)排序。当我在GUI中单击“排序”按钮时,它没有按预期工作

代码如下:

validation_time = tables.Column(accessor='model.history', verbose_name="Validation Time")
以下是调用该字段的代码:

def render_validation_time(self, value):
    try:
        x = value.filter(field_name__iexact='status').latest('id')
        validated_time = datetime.fromtimestamp(int(x.date_modified)).strftime('%a, %d %b %Y %H:%M:%S')
    except ObjectDoesNotExist:
        return "--"
    else:
        return validated_time

要使Django-tables2中的列可排序,只需添加

orderable=True
在模板中呈现表时,该字段将是可排序的

你的专栏应该是这样的:

validation_time = tables.Column(accessor='model.history', orderable=True, verbose_name="Validation Time")

如果您正在覆盖渲染方法,我不知道这是否能按预期工作

是否需要对其进行预处理?