是否可以在序列化程序上为drf使用Django humanize过滤器?
我尝试过将naturaltime放在to_representation方法中,如下所示
def to_representation(self, instance):
representation = super(ListUsersSerializer,
self).to_representation(instance)
representation['last_login'] = instance.last_login(naturaltime)但这不起作用
发布于 2022-02-02 09:01:08
是的,您可以通过naturaltime过滤器传递数据,方法如下:
from django.contrib.humanize.templatetags.humanize import naturaltime
def to_representation(self, instance):
representation = super().to_representation(instance)
representation['last_login'] = naturaltime(instance.last_login)
return representation请注意,Django的naturaltime在数字和其单位之间使用 [wiki],而不是普通空间,因此:
>>> naturaltime(datetime(2019, 11, 25))
'2\xa0years, 2\xa0months ago'https://stackoverflow.com/questions/70952799
复制相似问题