我已经在我的项目中实现了 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")
如果您要覆盖渲染方法,我不知道这是否会按预期工作
