1

我不喜欢 Django Admin 如何显示 DateTimeField 值,例如“2012 年 9 月 4 日,早上 6 点”。我通过在 admin.py 的类中添加此函数将其更改为 YYYY-MM-DD:

def d_ordered(self, obj):
    return obj.date_ordered.strftime('%Y-%m-%d')
d_ordered.short_description = 'Date Ordered'
d_ordered.admin_order_field = 'date_ordered'

这有效并允许字段标题排序。

但是,如果任何日期记录为 NULL,那么我会收到错误'NoneType' object has no attribute 'strftime'

如何在仍然允许 NULL 日期值和标题排序的同时修复此错误?

谢谢!!!

4

1 回答 1

2

您正在对 None 值执行方法。因此,您首先必须检查该字段是否不是 None:

if obj.date_ordered is None:
    return ''
于 2013-07-23T06:38:26.323 回答