这是我的模型,例如:
class Lics(models.Model):
files_id = models.IntegerField(blank=True, null=True)
seqno = models.IntegerField(blank=True, null=True)
expire = models.TextField(blank=True)
“expire”字段带有日期。我有一个函数,在调用api时从'now'开始执行delta。调用时如何以及在何处在ViewSet中添加额外字段Lics.objects.all所有()添加为第4个字段,显示'days'=4,例如,如果许可证从现在起4天过期。你知道吗
预期输出:[{files_id:1, seqno:2, expire:'4-jan-2019', 'days':4 }]
@RishiG有个好办法。另外,还可以创建模型属性。你知道吗
然后,只需在序列化程序的“fields”参数中包含“days”。你知道吗
我通常根据我想在哪里访问这些数据来决定我的方法。例如,如果我想直接对模型实例的
days
属性进行操作,我就把它放在模型中。如果我只关心在视图中冒泡这个数据,我就把它放在序列化程序中。你知道吗我可能会将它添加为
SerializerMethodField
,以便根据请求计算它。实际上,这与the example in the docs非常相似。您需要以下内容(注意:我没有测试过这个,它只是对文档化示例的一个轻微修改):相关问题 更多 >
编程相关推荐