在这里,我只想在模型上注释一个字段,该字段提供人类可读的格式,说明自创建以来经过了多少时间
My Model is created 30 seconds ago
我的型号说明:
from django.db import models
class MyModel(models.Model):
name = models.CharField(max_length=100)
created_at = models.DateTimeField(auto_now_add=True)
class Meta:
ordering = ['-created_at']
@property
def natural_time(self):
return naturaltime(self.created_at)
我所做的是在这里
from django.contrib.humanize.templatetags.humanize import naturaltime
from django.db.models import F
from .models import MyModel
m = MyModel.objects.annotate(timesincecreated=naturaltime(F('created_at'))
print m.values('timesincecreated')
在这个打印电话中,我得到了DateTimeField
我在模型中使用的那个。但是如果我想访问该属性。
from .models import MyModel
m= MyModel.objects.first()
print m.natural_time
有用。
有什么帮助吗?TIA。