在使用Django Admin做一些业务系统时发现它默认的时间格式是类似于:
May 8, 2020, 11:55 a.m.
这对于一般的客户来说,读起来有点麻烦。所以经常会收到反馈是希望有一个易读性更强的时间字段。实现方法很简单,可以这样:
在ModelAdmin中,添加一个新的时间方法,例如:
def formated_time(self, obj):
return obj.timefield.strftime("%Y-%m-%d %H:%M:%S")
然后指定它对应的ORM中的字段以及字段的说明:
formated_time.admin_order_field = 'timefield'
formated_time.short_description = 'Precise Time'
最后修改list_display,将原始的字段替换为formated_time:
list_display = ('id', 'time_seconds', )
大功告成!