参加这样一个简单的类(class)。
class MyModel(models.Model):
last_updated = models.DateTimeField(auto_now_add=True)
last_viewed = models.DateTimeField(auto_now_add=True)
我想要做的就是按这两个字段之间的时间对该模型的查询输出进行排序,以便自更新以来未查看的内容显示得比已查看的内容更高。
我觉得我应该能够对表进行注释并根据该注释进行排序,但在注释(或原始 SQL)方面我并不是天才。有人能把我踢向正确的方向吗?
最佳答案
你可以这样做:
MyModel.objects.extra(select={'offset': 'last_viewed - last_updated'}).order_by('offset')
请参阅docs详细解释。
关于Django:根据两个字段之间的差异对模型进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6155105/