Django - 按实例的更新时间排序查询集结果

时间:2014-02-14 22:52:59

标签: django django-models django-queryset

有没有办法通过其实例的更新时间来订购模型查询集的结果?即最近保存的实例是第一个,依此类推。

2 个答案:

答案 0 :(得分:2)

您需要在模型中添加时间戳字段。例如,在我自己的代码中,我为此目的添加了一个date_updated字段。

默认情况下,您的自定义模型没有此功能,因此您必须添加它。

last_edit = models.DateTimeField(auto_now_add=True)

您必须在模型的保存方法(或其他方法)中更新它。

import datetime
self.last_edit = datetime.datetime.now()

答案 1 :(得分:0)

如果您的模型上有一个跟踪此更新时间(more information on this here)的字段,那么您可以在normal ordering specification中使用该字段。

如果您没有跟踪模型的更新,请注意,这是不可能的。